Hash :
d7cec926
Author :
Date :
2003-06-13T12:30:10
reverted back patch for #113521, due to #115104 and while fixing #115101 . * doc/Makefile.am doc/html/*: reverted back patch for #113521, due to #115104 and while fixing #115101 . HTML URLs must not be version dependant. Daniel
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>tree</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;
border: solid 1px #aaaaaa;
padding: 0.5em;
}
.programlisting {
background: #eeeeff;
border: solid 1px #aaaaff;
padding: 0.5em;
}
.variablelist {
padding: 4px;
margin-left: 3em;
}
.navigation {
background: #ffeeee;
border: solid 1px #ffaaaa;
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.navigation a {
color: #770000;
}
.navigation a:visited {
color: #550000;
}
.navigation .title {
font-size: 200%;
}
</style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual"><link rel="up" href="libxml-lib.html" title="Libxml Library Reference"><link rel="previous" href="libxml-SAX.html" title="SAX"><link rel="next" href="libxml-entities.html" title="entities"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-SAX.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></img></a></td><td><a accesskey="u" href="libxml-lib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></img></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></img></a></td><th width="100%" align="center">Gnome XML Library Reference Manual</th><td><a accesskey="n" href="libxml-entities.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></img></a></td></tr></table><div class="refentry" lang="en"><a name="libxml-tree"></a><div class="titlepage"></div><div class="refnamediv"><h2>tree</h2><p>tree — </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
struct <a href="libxml-tree.html#xmlParserInputBuffer">xmlParserInputBuffer</a>;
typedef <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a>;
struct <a href="libxml-tree.html#xmlOutputBuffer">xmlOutputBuffer</a>;
typedef <a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a>;
struct <a href="libxml-parser.html#xmlParserInput">xmlParserInput</a>;
typedef <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a>;
struct <a href="libxml-parser.html#xmlParserCtxt">xmlParserCtxt</a>;
typedef <a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a>;
struct <a href="libxml-parser.html#xmlSAXLocator">xmlSAXLocator</a>;
typedef <a href="libxml-tree.html#xmlSAXLocatorPtr">xmlSAXLocatorPtr</a>;
struct <a href="libxml-parser.html#xmlSAXHandler">xmlSAXHandler</a>;
typedef <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a>;
struct <a href="libxml-tree.html#xmlEntity">xmlEntity</a>;
typedef <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a>;
#define <a href="libxml-tree.html#BASE-BUFFER-SIZE-CAPS">BASE_BUFFER_SIZE</a>
#define <a href="libxml-tree.html#XML-XML-NAMESPACE-CAPS">XML_XML_NAMESPACE</a>
enum <a href="libxml-tree.html#xmlElementType">xmlElementType</a>;
typedef <a href="libxml-tree.html#xmlChar">xmlChar</a>;
#define <a href="libxml-tree.html#BAD-CAST-CAPS">BAD_CAST</a>
struct <a href="libxml-tree.html#xmlNotation">xmlNotation</a>;
typedef <a href="libxml-tree.html#xmlNotationPtr">xmlNotationPtr</a>;
enum <a href="libxml-tree.html#xmlAttributeType">xmlAttributeType</a>;
enum <a href="libxml-tree.html#xmlAttributeDefault">xmlAttributeDefault</a>;
struct <a href="libxml-tree.html#xmlEnumeration">xmlEnumeration</a>;
typedef <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a>;
struct <a href="libxml-tree.html#xmlAttribute">xmlAttribute</a>;
typedef <a href="libxml-tree.html#xmlAttributePtr">xmlAttributePtr</a>;
enum <a href="libxml-tree.html#xmlElementContentType">xmlElementContentType</a>;
enum <a href="libxml-tree.html#xmlElementContentOccur">xmlElementContentOccur</a>;
struct <a href="libxml-tree.html#xmlElementContent">xmlElementContent</a>;
typedef <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a>;
enum <a href="libxml-tree.html#xmlElementTypeVal">xmlElementTypeVal</a>;
struct <a href="libxml-tree.html#xmlElement">xmlElement</a>;
typedef <a href="libxml-tree.html#xmlElementPtr">xmlElementPtr</a>;
#define <a href="libxml-tree.html#XML-LOCAL-NAMESPACE-CAPS">XML_LOCAL_NAMESPACE</a>
typedef <a href="libxml-tree.html#xmlNsType">xmlNsType</a>;
struct <a href="libxml-tree.html#xmlNs">xmlNs</a>;
typedef <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>;
struct <a href="libxml-tree.html#xmlDtd">xmlDtd</a>;
typedef <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>;
struct <a href="libxml-tree.html#xmlAttr">xmlAttr</a>;
typedef <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>;
struct <a href="libxml-tree.html#xmlID">xmlID</a>;
typedef <a href="libxml-tree.html#xmlIDPtr">xmlIDPtr</a>;
struct <a href="libxml-tree.html#xmlRef">xmlRef</a>;
typedef <a href="libxml-tree.html#xmlRefPtr">xmlRefPtr</a>;
enum <a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a>;
struct <a href="libxml-tree.html#xmlBuffer">xmlBuffer</a>;
typedef <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a>;
struct <a href="libxml-tree.html#xmlNode">xmlNode</a>;
typedef <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>;
#define <a href="libxml-tree.html#XML-GET-CONTENT-CAPS">XML_GET_CONTENT</a> (n)
#define <a href="libxml-tree.html#XML-GET-LINE-CAPS">XML_GET_LINE</a> (n)
struct <a href="libxml-tree.html#xmlDoc">xmlDoc</a>;
typedef <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>;
#define <a href="libxml-tree.html#xmlChildrenNode">xmlChildrenNode</a>
#define <a href="libxml-tree.html#xmlRootNode">xmlRootNode</a>
int <a href="libxml-tree.html#xmlValidateNCName">xmlValidateNCName</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);
int <a href="libxml-tree.html#xmlValidateQName">xmlValidateQName</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);
int <a href="libxml-tree.html#xmlValidateName">xmlValidateName</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);
int <a href="libxml-tree.html#xmlValidateNMToken">xmlValidateNMToken</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlBuildQName">xmlBuildQName</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ncname,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *memory,
int len);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlSplitQName2">xmlSplitQName2</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);
void <a href="libxml-tree.html#xmlSetBufferAllocationScheme">xmlSetBufferAllocationScheme</a> (<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);
<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> <a href="libxml-tree.html#xmlGetBufferAllocationScheme">xmlGetBufferAllocationScheme</a>
(void);
<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> <a href="libxml-tree.html#xmlBufferCreate">xmlBufferCreate</a> (void);
<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> <a href="libxml-tree.html#xmlBufferCreateSize">xmlBufferCreateSize</a> (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="size-t">size_t</GTKDOCLINK> size);
int <a href="libxml-tree.html#xmlBufferResize">xmlBufferResize</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
unsigned int size);
void <a href="libxml-tree.html#xmlBufferFree">xmlBufferFree</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
int <a href="libxml-tree.html#xmlBufferDump">xmlBufferDump</a> (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *file,
<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
void <a href="libxml-tree.html#xmlBufferAdd">xmlBufferAdd</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
int len);
void <a href="libxml-tree.html#xmlBufferAddHead">xmlBufferAddHead</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
int len);
void <a href="libxml-tree.html#xmlBufferCat">xmlBufferCat</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str);
void <a href="libxml-tree.html#xmlBufferCCat">xmlBufferCCat</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const char *str);
int <a href="libxml-tree.html#xmlBufferShrink">xmlBufferShrink</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
unsigned int len);
int <a href="libxml-tree.html#xmlBufferGrow">xmlBufferGrow</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
unsigned int len);
void <a href="libxml-tree.html#xmlBufferEmpty">xmlBufferEmpty</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
const <a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlBufferContent">xmlBufferContent</a> (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
void <a href="libxml-tree.html#xmlBufferSetAllocationScheme">xmlBufferSetAllocationScheme</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);
int <a href="libxml-tree.html#xmlBufferLength">xmlBufferLength</a> (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);
<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> <a href="libxml-tree.html#xmlCreateIntSubset">xmlCreateIntSubset</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);
<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> <a href="libxml-tree.html#xmlNewDtd">xmlNewDtd</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);
<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> <a href="libxml-tree.html#xmlGetIntSubset">xmlGetIntSubset</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
void <a href="libxml-tree.html#xmlFreeDtd">xmlFreeDtd</a> (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur);
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="libxml-tree.html#xmlNewGlobalNs">xmlNewGlobalNs</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="libxml-tree.html#xmlNewNs">xmlNewNs</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);
void <a href="libxml-tree.html#xmlFreeNs">xmlFreeNs</a> (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
void <a href="libxml-tree.html#xmlFreeNsList">xmlFreeNsList</a> (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a href="libxml-tree.html#xmlNewDoc">xmlNewDoc</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *version);
void <a href="libxml-tree.html#xmlFreeDoc">xmlFreeDoc</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlNewDocProp">xmlNewDocProp</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlNewProp">xmlNewProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlNewNsProp">xmlNewNsProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlNewNsPropEatName">xmlNewNsPropEatName</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
void <a href="libxml-tree.html#xmlFreePropList">xmlFreePropList</a> (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
void <a href="libxml-tree.html#xmlFreeProp">xmlFreeProp</a> (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlCopyProp">xmlCopyProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlCopyPropList">xmlCopyPropList</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> <a href="libxml-tree.html#xmlCopyDtd">xmlCopyDtd</a> (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd);
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> <a href="libxml-tree.html#xmlCopyDoc">xmlCopyDoc</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
int recursive);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewDocNode">xmlNewDocNode</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewDocNodeEatName">xmlNewDocNodeEatName</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewDocRawNode">xmlNewDocRawNode</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewNode">xmlNewNode</a> (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewNodeEatName">xmlNewNodeEatName</a> (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewChild">xmlNewChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewTextChild">xmlNewTextChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewDocText">xmlNewDocText</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewText">xmlNewText</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewPI">xmlNewPI</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewDocTextLen">xmlNewDocTextLen</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewTextLen">xmlNewTextLen</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewDocComment">xmlNewDocComment</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewComment">xmlNewComment</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewCDataBlock">xmlNewCDataBlock</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewCharRef">xmlNewCharRef</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewReference">xmlNewReference</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlCopyNode">xmlCopyNode</a> (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
int recursive);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlDocCopyNode">xmlDocCopyNode</a> (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
int recursive);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlCopyNodeList">xmlCopyNodeList</a> (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlNewDocFragment">xmlNewDocFragment</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="long">long</GTKDOCLINK> <a href="libxml-tree.html#xmlGetLineNo">xmlGetLineNo</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlGetNodePath">xmlGetNodePath</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlDocGetRootElement">xmlDocGetRootElement</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlGetLastChild">xmlGetLastChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent);
int <a href="libxml-tree.html#xmlNodeIsText">xmlNodeIsText</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
int <a href="libxml-tree.html#xmlIsBlankNode">xmlIsBlankNode</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlDocSetRootElement">xmlDocSetRootElement</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root);
void <a href="libxml-tree.html#xmlNodeSetName">xmlNodeSetName</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlAddChild">xmlAddChild</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlAddChildList">xmlAddChildList</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlReplaceNode">xmlReplaceNode</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlAddSibling">xmlAddSibling</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlAddPrevSibling">xmlAddPrevSibling</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlAddNextSibling">xmlAddNextSibling</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
void <a href="libxml-tree.html#xmlUnlinkNode">xmlUnlinkNode</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlTextMerge">xmlTextMerge</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second);
int <a href="libxml-tree.html#xmlTextConcat">xmlTextConcat</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);
void <a href="libxml-tree.html#xmlFreeNodeList">xmlFreeNodeList</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
void <a href="libxml-tree.html#xmlFreeNode">xmlFreeNode</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
void <a href="libxml-tree.html#xmlSetTreeDoc">xmlSetTreeDoc</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
void <a href="libxml-tree.html#xmlSetListDoc">xmlSetListDoc</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="libxml-tree.html#xmlSearchNs">xmlSearchNs</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="libxml-tree.html#xmlSearchNsByHref">xmlSearchNsByHref</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href);
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>* <a href="libxml-tree.html#xmlGetNsList">xmlGetNsList</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);
void <a href="libxml-tree.html#xmlSetNs">xmlSetNs</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns);
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="libxml-tree.html#xmlCopyNamespace">xmlCopyNamespace</a> (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> <a href="libxml-tree.html#xmlCopyNamespaceList">xmlCopyNamespaceList</a> (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlSetProp">xmlSetProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlGetProp">xmlGetProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlGetNoNsProp">xmlGetNoNsProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlHasProp">xmlHasProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlHasNsProp">xmlHasNsProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="libxml-tree.html#xmlSetNsProp">xmlSetNsProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlGetNsProp">xmlGetNsProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlStringGetNodeList">xmlStringGetNodeList</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-tree.html#xmlStringLenGetNodeList">xmlStringLenGetNodeList</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int len);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlNodeListGetString">xmlNodeListGetString</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
int inLine);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlNodeListGetRawString">xmlNodeListGetRawString</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
int inLine);
void <a href="libxml-tree.html#xmlNodeSetContent">xmlNodeSetContent</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
void <a href="libxml-tree.html#xmlNodeSetContentLen">xmlNodeSetContentLen</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);
void <a href="libxml-tree.html#xmlNodeAddContent">xmlNodeAddContent</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);
void <a href="libxml-tree.html#xmlNodeAddContentLen">xmlNodeAddContentLen</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlNodeGetContent">xmlNodeGetContent</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlNodeGetLang">xmlNodeGetLang</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
void <a href="libxml-tree.html#xmlNodeSetLang">xmlNodeSetLang</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *lang);
int <a href="libxml-tree.html#xmlNodeGetSpacePreserve">xmlNodeGetSpacePreserve</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
void <a href="libxml-tree.html#xmlNodeSetSpacePreserve">xmlNodeSetSpacePreserve</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
int val);
<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-tree.html#xmlNodeGetBase">xmlNodeGetBase</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
void <a href="libxml-tree.html#xmlNodeSetBase">xmlNodeSetBase</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *uri);
int <a href="libxml-tree.html#xmlRemoveProp">xmlRemoveProp</a> (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);
int <a href="libxml-tree.html#xmlUnsetProp">xmlUnsetProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
int <a href="libxml-tree.html#xmlUnsetNsProp">xmlUnsetNsProp</a> (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);
void <a href="libxml-tree.html#xmlBufferWriteCHAR">xmlBufferWriteCHAR</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);
void <a href="libxml-tree.html#xmlBufferWriteChar">xmlBufferWriteChar</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const char *string);
void <a href="libxml-tree.html#xmlBufferWriteQuotedString">xmlBufferWriteQuotedString</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);
int <a href="libxml-tree.html#xmlReconciliateNs">xmlReconciliateNs</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree);
void <a href="libxml-tree.html#xmlDocDumpFormatMemory">xmlDocDumpFormatMemory</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
int *size,
int format);
void <a href="libxml-tree.html#xmlDocDumpMemory">xmlDocDumpMemory</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
int *size);
void <a href="libxml-tree.html#xmlDocDumpMemoryEnc">xmlDocDumpMemoryEnc</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
int *doc_txt_len,
const char *txt_encoding);
void <a href="libxml-tree.html#xmlDocDumpFormatMemoryEnc">xmlDocDumpFormatMemoryEnc</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
int *doc_txt_len,
const char *txt_encoding,
int format);
int <a href="libxml-tree.html#xmlDocFormatDump">xmlDocFormatDump</a> (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
int format);
int <a href="libxml-tree.html#xmlDocDump">xmlDocDump</a> (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
void <a href="libxml-tree.html#xmlElemDump">xmlElemDump</a> (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
int <a href="libxml-tree.html#xmlSaveFile">xmlSaveFile</a> (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
int <a href="libxml-tree.html#xmlSaveFormatFile">xmlSaveFormatFile</a> (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
int format);
int <a href="libxml-tree.html#xmlNodeDump">xmlNodeDump</a> (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
int level,
int format);
int <a href="libxml-tree.html#xmlSaveFileTo">xmlSaveFileTo</a> (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding);
int <a href="libxml-tree.html#xmlSaveFormatFileTo">xmlSaveFormatFileTo</a> (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding,
int format);
void <a href="libxml-tree.html#xmlNodeDumpOutput">xmlNodeDumpOutput</a> (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
int level,
int format,
const char *encoding);
int <a href="libxml-tree.html#xmlSaveFormatFileEnc">xmlSaveFormatFileEnc</a> (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding,
int format);
int <a href="libxml-tree.html#xmlSaveFileEnc">xmlSaveFileEnc</a> (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding);
int <a href="libxml-tree.html#xmlIsXHTML">xmlIsXHTML</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *systemID,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *publicID);
int <a href="libxml-tree.html#xmlGetDocCompressMode">xmlGetDocCompressMode</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
void <a href="libxml-tree.html#xmlSetDocCompressMode">xmlSetDocCompressMode</a> (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
int mode);
int <a href="libxml-tree.html#xmlGetCompressMode">xmlGetCompressMode</a> (void);
void <a href="libxml-tree.html#xmlSetCompressMode">xmlSetCompressMode</a> (int mode);
</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="xmlParserInputBuffer"></a>struct xmlParserInputBuffer</h3><pre class="programlisting">struct xmlParserInputBuffer {
void* context;
xmlInputReadCallback readcallback;
xmlInputCloseCallback closecallback;
xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
xmlBufferPtr buffer; /* Local buffer encoded in UTF-8 */
xmlBufferPtr raw; /* if encoder != NULL buffer for raw input */
};
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserInputBufferPtr"></a>xmlParserInputBufferPtr</h3><pre class="programlisting">typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlOutputBuffer"></a>struct xmlOutputBuffer</h3><pre class="programlisting">struct xmlOutputBuffer {
void* context;
xmlOutputWriteCallback writecallback;
xmlOutputCloseCallback closecallback;
xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
xmlBufferPtr buffer; /* Local buffer encoded in UTF-8 or ISOLatin */
xmlBufferPtr conv; /* if encoder != NULL buffer for output */
int written; /* total number of byte written */
};
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlOutputBufferPtr"></a>xmlOutputBufferPtr</h3><pre class="programlisting">typedef xmlOutputBuffer *xmlOutputBufferPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserInput"></a>struct xmlParserInput</h3><pre class="programlisting">struct xmlParserInput {
/* Input buffer */
xmlParserInputBufferPtr buf; /* UTF-8 encoded buffer */
const char *filename; /* The file analyzed, if any */
const char *directory; /* the directory/base of the file */
const xmlChar *base; /* Base of the array to parse */
const xmlChar *cur; /* Current char being parsed */
const xmlChar *end; /* end of the array to parse */
int length; /* length if known */
int line; /* Current line */
int col; /* Current column */
/*
* NOTE: consumed is only tested for equality in the parser code,
* so even if there is an overflow this should not give troubles
* for parsing very large instances.
*/
unsigned long consumed; /* How many xmlChars already consumed */
xmlParserInputDeallocate free; /* function to deallocate the base */
const xmlChar *encoding; /* the encoding string for entity */
const xmlChar *version; /* the version string for entity */
int standalone; /* Was that entity marked standalone */
};
</pre><p>
An xmlParserInput is an input flow for the XML processor.
Each entity parsed is associated an xmlParserInput (except the
few predefined ones). This is the case both for internal entities
- in which case the flow is already completely in memory - or
external entities - in which case we use the buf structure for
progressive reading and I18N conversions to the internal UTF-8 format.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserInputPtr"></a>xmlParserInputPtr</h3><pre class="programlisting">typedef xmlParserInput *xmlParserInputPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserCtxt"></a>struct xmlParserCtxt</h3><pre class="programlisting">struct xmlParserCtxt {
struct _xmlSAXHandler *sax; /* The SAX handler */
void *userData; /* For SAX interface only, used by DOM build */
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 */
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 DOM building */
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 record_info; /* Whether node info should be kept */
xmlParserNodeInfoSeq node_seq; /* info about each node parsed */
int errNo; /* error code */
int hasExternalSubset; /* reference and external subset */
int hasPErefs; /* the internal subset has PE refs */
int external; /* are we parsing an external entity */
int valid; /* is the document valid */
int validate; /* shall we try to validate ? */
xmlValidCtxt vctxt; /* The validity context */
xmlParserInputState instate; /* current type of input */
int token; /* next char look-ahead */
char *directory; /* the data directory */
/* Node name stack */
xmlChar *name; /* Current parsed Node */
int nameNr; /* Depth of the parsing stack */
int nameMax; /* Max depth of the parsing stack */
xmlChar * *nameTab; /* array of nodes */
long nbChars; /* number of xmlChar processed */
long checkIndex; /* used by progressive parsing lookup */
int keepBlanks; /* ugly but ... */
int disableSAX; /* SAX callbacks are disabled */
int inSubset; /* Parsing is in int 1/ext 2 subset */
xmlChar * intSubName; /* name of subset */
xmlChar * extSubURI; /* URI of external subset */
xmlChar * extSubSystem; /* SYSTEM ID of external subset */
/* xml:space values */
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 xmlCharEncoding */
int nodelen; /* Those two fields are there to */
int nodemem; /* Speed up large node parsing */
int pedantic; /* signal pedantic warnings */
void *_private; /* For user data, libxml won't touch it */
int loadsubset; /* should the external subset be loaded */
int linenumbers; /* set line number in element content */
void *catalogs; /* document's own catalog */
int recovery; /* run in recovery mode */
int progressive; /* is this a progressive parsing */
};
</pre><p>
The parser context.
NOTE This doesn't completely define the parser state, the (current ?)
design of the parser uses recursive function calls since this allow
and easy mapping from the production rules of the specification
to the actual code. The drawback is that the actual function call
also reflect the parser state. However most of the parsing routines
takes as the only argument the parser context pointer, so migrating
to a state based parser for progressive parsing shouldn't be too hard.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserCtxtPtr"></a>xmlParserCtxtPtr</h3><pre class="programlisting">typedef xmlParserCtxt *xmlParserCtxtPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXLocator"></a>struct xmlSAXLocator</h3><pre class="programlisting">struct xmlSAXLocator {
const xmlChar *(*getPublicId)(void *ctx);
const xmlChar *(*getSystemId)(void *ctx);
int (*getLineNumber)(void *ctx);
int (*getColumnNumber)(void *ctx);
};
</pre><p>
A SAX Locator.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXLocatorPtr"></a>xmlSAXLocatorPtr</h3><pre class="programlisting">typedef xmlSAXLocator *xmlSAXLocatorPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXHandler"></a>struct xmlSAXHandler</h3><pre class="programlisting">struct xmlSAXHandler {
internalSubsetSAXFunc internalSubset;
isStandaloneSAXFunc isStandalone;
hasInternalSubsetSAXFunc hasInternalSubset;
hasExternalSubsetSAXFunc hasExternalSubset;
resolveEntitySAXFunc resolveEntity;
getEntitySAXFunc getEntity;
entityDeclSAXFunc entityDecl;
notationDeclSAXFunc notationDecl;
attributeDeclSAXFunc attributeDecl;
elementDeclSAXFunc elementDecl;
unparsedEntityDeclSAXFunc unparsedEntityDecl;
setDocumentLocatorSAXFunc setDocumentLocator;
startDocumentSAXFunc startDocument;
endDocumentSAXFunc endDocument;
startElementSAXFunc startElement;
endElementSAXFunc endElement;
referenceSAXFunc reference;
charactersSAXFunc characters;
ignorableWhitespaceSAXFunc ignorableWhitespace;
processingInstructionSAXFunc processingInstruction;
commentSAXFunc comment;
warningSAXFunc warning;
errorSAXFunc error;
fatalErrorSAXFunc fatalError; /* unused error() get all the errors */
getParameterEntitySAXFunc getParameterEntity;
cdataBlockSAXFunc cdataBlock;
externalSubsetSAXFunc externalSubset;
int initialized;
};
</pre><p>
A SAX handler is bunch of callbacks called by the parser when processing
of the input generate data or structure informations.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSAXHandlerPtr"></a>xmlSAXHandlerPtr</h3><pre class="programlisting">typedef xmlSAXHandler *xmlSAXHandlerPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEntity"></a>struct xmlEntity</h3><pre class="programlisting">struct xmlEntity {
void *_private; /* application data */
xmlElementType type; /* XML_ENTITY_DECL, must be second ! */
const xmlChar *name; /* Entity name */
struct _xmlNode *children; /* First child link */
struct _xmlNode *last; /* Last child link */
struct _xmlDtd *parent; /* -> DTD */
struct _xmlNode *next; /* next sibling link */
struct _xmlNode *prev; /* previous sibling link */
struct _xmlDoc *doc; /* the containing document */
xmlChar *orig; /* content without ref substitution */
xmlChar *content; /* content or ndata if unparsed */
int length; /* the content length */
xmlEntityType etype; /* The entity type */
const xmlChar *ExternalID; /* External identifier for PUBLIC */
const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC Entity */
struct _xmlEntity *nexte; /* unused */
const xmlChar *URI; /* the full URI as computed */
int owner; /* does the entity own the childrens */
};
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEntityPtr"></a>xmlEntityPtr</h3><pre class="programlisting">typedef xmlEntity *xmlEntityPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="BASE-BUFFER-SIZE-CAPS"></a>BASE_BUFFER_SIZE</h3><pre class="programlisting">#define BASE_BUFFER_SIZE 4000
</pre><p>
default buffer size 4000.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-XML-NAMESPACE-CAPS"></a>XML_XML_NAMESPACE</h3><pre class="programlisting">#define XML_XML_NAMESPACE</pre><p>
This is the namespace for the special xml: prefix predefined in the
XML Namespace specification.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementType"></a>enum xmlElementType</h3><pre class="programlisting">typedef enum {
XML_ELEMENT_NODE= 1,
XML_ATTRIBUTE_NODE= 2,
XML_TEXT_NODE= 3,
XML_CDATA_SECTION_NODE= 4,
XML_ENTITY_REF_NODE= 5,
XML_ENTITY_NODE= 6,
XML_PI_NODE= 7,
XML_COMMENT_NODE= 8,
XML_DOCUMENT_NODE= 9,
XML_DOCUMENT_TYPE_NODE= 10,
XML_DOCUMENT_FRAG_NODE= 11,
XML_NOTATION_NODE= 12,
XML_HTML_DOCUMENT_NODE= 13,
XML_DTD_NODE= 14,
XML_ELEMENT_DECL= 15,
XML_ATTRIBUTE_DECL= 16,
XML_ENTITY_DECL= 17,
XML_NAMESPACE_DECL= 18,
XML_XINCLUDE_START= 19,
XML_XINCLUDE_END= 20
#ifdef LIBXML_DOCB_ENABLED
,XML_DOCB_DOCUMENT_NODE= 21
#endif
} xmlElementType;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlChar"></a>xmlChar</h3><pre class="programlisting">typedef unsigned char xmlChar;
</pre><p>
This is a basic byte in an UTF-8 encoded string.
It's unsigned allowing to pinpoint case where char * are assigned
to xmlChar * (possibly making serialization back impossible).</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="BAD-CAST-CAPS"></a>BAD_CAST</h3><pre class="programlisting">#define BAD_CAST (xmlChar *)
</pre><p>
Macro to cast a string to an xmlChar * when one know its safe.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNotation"></a>struct xmlNotation</h3><pre class="programlisting">struct xmlNotation {
const xmlChar *name; /* Notation name */
const xmlChar *PublicID; /* Public identifier, if any */
const xmlChar *SystemID; /* System identifier, if any */
};
</pre><p>
A DTD Notation definition.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNotationPtr"></a>xmlNotationPtr</h3><pre class="programlisting">typedef xmlNotation *xmlNotationPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttributeType"></a>enum xmlAttributeType</h3><pre class="programlisting">typedef enum {
XML_ATTRIBUTE_CDATA = 1,
XML_ATTRIBUTE_ID,
XML_ATTRIBUTE_IDREF ,
XML_ATTRIBUTE_IDREFS,
XML_ATTRIBUTE_ENTITY,
XML_ATTRIBUTE_ENTITIES,
XML_ATTRIBUTE_NMTOKEN,
XML_ATTRIBUTE_NMTOKENS,
XML_ATTRIBUTE_ENUMERATION,
XML_ATTRIBUTE_NOTATION
} xmlAttributeType;
</pre><p>
A DTD Attribute type definition.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttributeDefault"></a>enum xmlAttributeDefault</h3><pre class="programlisting">typedef enum {
XML_ATTRIBUTE_NONE = 1,
XML_ATTRIBUTE_REQUIRED,
XML_ATTRIBUTE_IMPLIED,
XML_ATTRIBUTE_FIXED
} xmlAttributeDefault;
</pre><p>
A DTD Attribute default definition.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEnumeration"></a>struct xmlEnumeration</h3><pre class="programlisting">struct xmlEnumeration {
struct _xmlEnumeration *next; /* next one */
const xmlChar *name; /* Enumeration name */
};
</pre><p>
List structure used when there is an enumeration in DTDs.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEnumerationPtr"></a>xmlEnumerationPtr</h3><pre class="programlisting">typedef xmlEnumeration *xmlEnumerationPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttribute"></a>struct xmlAttribute</h3><pre class="programlisting">struct xmlAttribute {
void *_private; /* application data */
xmlElementType type; /* XML_ATTRIBUTE_DECL, must be second ! */
const xmlChar *name; /* Attribute name */
struct _xmlNode *children; /* NULL */
struct _xmlNode *last; /* NULL */
struct _xmlDtd *parent; /* -> DTD */
struct _xmlNode *next; /* next sibling link */
struct _xmlNode *prev; /* previous sibling link */
struct _xmlDoc *doc; /* the containing document */
struct _xmlAttribute *nexth; /* next in hash table */
xmlAttributeType atype; /* The attribute type */
xmlAttributeDefault def; /* the default */
const xmlChar *defaultValue; /* or the default value */
xmlEnumerationPtr tree; /* or the enumeration tree if any */
const xmlChar *prefix; /* the namespace prefix if any */
const xmlChar *elem; /* Element holding the attribute */
};
</pre><p>
An Attribute declaration in a DTD.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttributePtr"></a>xmlAttributePtr</h3><pre class="programlisting">typedef xmlAttribute *xmlAttributePtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContentType"></a>enum xmlElementContentType</h3><pre class="programlisting">typedef enum {
XML_ELEMENT_CONTENT_PCDATA = 1,
XML_ELEMENT_CONTENT_ELEMENT,
XML_ELEMENT_CONTENT_SEQ,
XML_ELEMENT_CONTENT_OR
} xmlElementContentType;
</pre><p>
Possible definitions of element content types.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContentOccur"></a>enum xmlElementContentOccur</h3><pre class="programlisting">typedef enum {
XML_ELEMENT_CONTENT_ONCE = 1,
XML_ELEMENT_CONTENT_OPT,
XML_ELEMENT_CONTENT_MULT,
XML_ELEMENT_CONTENT_PLUS
} xmlElementContentOccur;
</pre><p>
Possible definitions of element content occurrences.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContent"></a>struct xmlElementContent</h3><pre class="programlisting">struct xmlElementContent {
xmlElementContentType type; /* PCDATA, ELEMENT, SEQ or OR */
xmlElementContentOccur ocur; /* ONCE, OPT, MULT or PLUS */
const xmlChar *name; /* Element name */
struct _xmlElementContent *c1; /* first child */
struct _xmlElementContent *c2; /* second child */
struct _xmlElementContent *parent; /* parent */
const xmlChar *prefix; /* Namespace prefix */
};
</pre><p>
An XML Element content as stored after parsing an element definition
in a DTD.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementContentPtr"></a>xmlElementContentPtr</h3><pre class="programlisting">typedef xmlElementContent *xmlElementContentPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementTypeVal"></a>enum xmlElementTypeVal</h3><pre class="programlisting">typedef enum {
XML_ELEMENT_TYPE_UNDEFINED = 0,
XML_ELEMENT_TYPE_EMPTY = 1,
XML_ELEMENT_TYPE_ANY,
XML_ELEMENT_TYPE_MIXED,
XML_ELEMENT_TYPE_ELEMENT
} xmlElementTypeVal;
</pre><p>
The different possibilities for an element content type.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElement"></a>struct xmlElement</h3><pre class="programlisting">struct xmlElement {
void *_private; /* application data */
xmlElementType type; /* XML_ELEMENT_DECL, must be second ! */
const xmlChar *name; /* Element name */
struct _xmlNode *children; /* NULL */
struct _xmlNode *last; /* NULL */
struct _xmlDtd *parent; /* -> DTD */
struct _xmlNode *next; /* next sibling link */
struct _xmlNode *prev; /* previous sibling link */
struct _xmlDoc *doc; /* the containing document */
xmlElementTypeVal etype; /* The type */
xmlElementContentPtr content; /* the allowed element content */
xmlAttributePtr attributes; /* List of the declared attributes */
const xmlChar *prefix; /* the namespace prefix if any */
#ifdef LIBXML_REGEXP_ENABLED
xmlRegexpPtr contModel; /* the validating regexp */
#else
void *contModel;
#endif
};
</pre><p>
An XML Element declaration from a DTD.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElementPtr"></a>xmlElementPtr</h3><pre class="programlisting">typedef xmlElement *xmlElementPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-LOCAL-NAMESPACE-CAPS"></a>XML_LOCAL_NAMESPACE</h3><pre class="programlisting">#define XML_LOCAL_NAMESPACE XML_NAMESPACE_DECL
</pre><p>
A namespace declaration node.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNsType"></a>xmlNsType</h3><pre class="programlisting">typedef xmlElementType xmlNsType;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNs"></a>struct xmlNs</h3><pre class="programlisting">struct xmlNs {
struct _xmlNs *next; /* next Ns link for this node */
xmlNsType type; /* global or local */
const xmlChar *href; /* URL for the namespace */
const xmlChar *prefix; /* prefix for the namespace */
void *_private; /* application data */
};
</pre><p>
An XML namespace.
Note that prefix == NULL is valid, it defines the default namespace
within the subtree (until overridden).
</p><p>
xmlNsType is unified with xmlElementType.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNsPtr"></a>xmlNsPtr</h3><pre class="programlisting">typedef xmlNs *xmlNsPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDtd"></a>struct xmlDtd</h3><pre class="programlisting">struct xmlDtd {
void *_private; /* application data */
xmlElementType type; /* XML_DTD_NODE, must be second ! */
const xmlChar *name; /* Name of the DTD */
struct _xmlNode *children; /* the value of the property link */
struct _xmlNode *last; /* last child link */
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 */
void *notations; /* Hash table for notations if any */
void *elements; /* Hash table for elements if any */
void *attributes; /* Hash table for attributes if any */
void *entities; /* Hash table for entities if any */
const xmlChar *ExternalID; /* External identifier for PUBLIC DTD */
const xmlChar *SystemID; /* URI for a SYSTEM or PUBLIC DTD */
void *pentities; /* Hash table for param entities if any */
};
</pre><p>
An XML DTD, as defined by <!DOCTYPE ... There is actually one for
the internal subset and for the external subset.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDtdPtr"></a>xmlDtdPtr</h3><pre class="programlisting">typedef xmlDtd *xmlDtdPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttr"></a>struct xmlAttr</h3><pre class="programlisting">struct xmlAttr {
void *_private; /* application data */
xmlElementType type; /* XML_ATTRIBUTE_NODE, must be second ! */
const xmlChar *name; /* the name of the property */
struct _xmlNode *children; /* the value of the property */
struct _xmlNode *last; /* NULL */
struct _xmlNode *parent; /* child->parent link */
struct _xmlAttr *next; /* next sibling link */
struct _xmlAttr *prev; /* previous sibling link */
struct _xmlDoc *doc; /* the containing document */
xmlNs *ns; /* pointer to the associated namespace */
xmlAttributeType atype; /* the attribute type if validating */
};
</pre><p>
An attribute on an XML node.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAttrPtr"></a>xmlAttrPtr</h3><pre class="programlisting">typedef xmlAttr *xmlAttrPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlID"></a>struct xmlID</h3><pre class="programlisting">struct xmlID {
struct _xmlID *next; /* next ID */
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 */
};
</pre><p>
An XML ID instance.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIDPtr"></a>xmlIDPtr</h3><pre class="programlisting">typedef xmlID *xmlIDPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRef"></a>struct xmlRef</h3><pre class="programlisting">struct xmlRef {
struct _xmlRef *next; /* next Ref */
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 */
};
</pre><p>
An XML IDREF instance.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRefPtr"></a>xmlRefPtr</h3><pre class="programlisting">typedef xmlRef *xmlRefPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferAllocationScheme"></a>enum xmlBufferAllocationScheme</h3><pre class="programlisting">typedef enum {
XML_BUFFER_ALLOC_DOUBLEIT,
XML_BUFFER_ALLOC_EXACT
} xmlBufferAllocationScheme;
</pre><p>
A buffer allocation scheme can be defined to either match exactly the
need or double it's allocated size each time it is found too small.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBuffer"></a>struct xmlBuffer</h3><pre class="programlisting">struct xmlBuffer {
xmlChar *content; /* The buffer content UTF8 */
unsigned int use; /* The buffer size used */
unsigned int size; /* The buffer size */
xmlBufferAllocationScheme alloc; /* The realloc method */
};
</pre><p>
A buffer structure.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferPtr"></a>xmlBufferPtr</h3><pre class="programlisting">typedef xmlBuffer *xmlBufferPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNode"></a>struct xmlNode</h3><pre class="programlisting">struct xmlNode {
void *_private; /* application data */
xmlElementType type; /* type number, must be second ! */
const xmlChar *name; /* the name of the node, or the entity */
struct _xmlNode *children; /* parent->childs link */
struct _xmlNode *last; /* last child link */
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 */
xmlNs *ns; /* pointer to the associated namespace */
xmlChar *content; /* the content */
struct _xmlAttr *properties;/* properties list */
xmlNs *nsDef; /* namespace definitions on this node */
};
</pre><p>
A node in an XML tree.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodePtr"></a>xmlNodePtr</h3><pre class="programlisting">typedef xmlNode *xmlNodePtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-GET-CONTENT-CAPS"></a>XML_GET_CONTENT()</h3><pre class="programlisting">#define XML_GET_CONTENT(n)</pre><p>
Macro to extract the content pointer of a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>n</tt></i> :</span></td><td>
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-GET-LINE-CAPS"></a>XML_GET_LINE()</h3><pre class="programlisting">#define XML_GET_LINE(n)</pre><p>
Macro to extract the line number of an element node.
This will work only if line numbering is activated by
calling xmlLineNumbersDefault(1) before parsing.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>n</tt></i> :</span></td><td>
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDoc"></a>struct xmlDoc</h3><pre class="programlisting">struct xmlDoc {
void *_private; /* application data */
xmlElementType type; /* XML_DOCUMENT_NODE, must be second ! */
char *name; /* name/filename/URI of the document */
struct _xmlNode *children; /* the document tree */
struct _xmlNode *last; /* last child link */
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 */
int compression;/* level of zlib compression */
int standalone; /* standalone document (no external refs) */
struct _xmlDtd *intSubset; /* the document internal subset */
struct _xmlDtd *extSubset; /* the document external subset */
struct _xmlNs *oldNs; /* Global namespace, the old way */
const xmlChar *version; /* the XML version string */
const xmlChar *encoding; /* external initial encoding, if any */
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 xmlCharEncoding */
};
</pre><p>
An XML document.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocPtr"></a>xmlDocPtr</h3><pre class="programlisting">typedef xmlDoc *xmlDocPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlChildrenNode"></a>xmlChildrenNode</h3><pre class="programlisting">#define xmlChildrenNode children
</pre><p>
Macro for compatibility naming layer with libxml1.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRootNode"></a>xmlRootNode</h3><pre class="programlisting">#define xmlRootNode children
</pre><p>
Macro for compatibility naming layer with libxml1.</p><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateNCName"></a>xmlValidateNCName ()</h3><pre class="programlisting">int xmlValidateNCName (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);</pre><p>
Check that a value conforms to the lexical space of NCName</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
</td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
and -1 in case of internal or API error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateQName"></a>xmlValidateQName ()</h3><pre class="programlisting">int xmlValidateQName (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);</pre><p>
Check that a value conforms to the lexical space of QName</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
</td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
and -1 in case of internal or API error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateName"></a>xmlValidateName ()</h3><pre class="programlisting">int xmlValidateName (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);</pre><p>
Check that a value conforms to the lexical space of Name</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
</td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
and -1 in case of internal or API error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlValidateNMToken"></a>xmlValidateNMToken ()</h3><pre class="programlisting">int xmlValidateNMToken (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int space);</pre><p>
Check that a value conforms to the lexical space of NMToken</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value to check
</td></tr><tr><td><span class="term"><i><tt>space</tt></i> :</span></td><td> allow spaces in front and end of the string
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if this validates, a positive error code number otherwise
and -1 in case of internal or API error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBuildQName"></a>xmlBuildQName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlBuildQName (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ncname,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *memory,
int len);</pre><p>
Builds the QName <i><tt>prefix</tt></i>:<i><tt>ncname</tt></i> in <i><tt>memory</tt></i> if there is enough space
and prefix is not NULL nor empty, otherwise allocate a new string.
If prefix is NULL or empty it returns ncname.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ncname</tt></i> :</span></td><td> the Name
</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td> the prefix
</td></tr><tr><td><span class="term"><i><tt>memory</tt></i> :</span></td><td> preallocated memory
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> preallocated memory length
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new string which must be freed by the caller if different from
<i><tt>memory</tt></i> and <i><tt>ncname</tt></i> or NULL in case of error
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSplitQName2"></a>xmlSplitQName2 ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlSplitQName2 (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);</pre><p>
parse an XML qualified name string
</p><p>
[NS 5] QName ::= (Prefix ':')? LocalPart
</p><p>
[NS 6] Prefix ::= NCName
</p><p>
[NS 7] LocalPart ::= NCName</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the full QName
</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td> a xmlChar **
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>NULL if not a QName, otherwise the local part, and prefix
is updated to get the Prefix if any.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetBufferAllocationScheme"></a>xmlSetBufferAllocationScheme ()</h3><pre class="programlisting">void xmlSetBufferAllocationScheme (<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);</pre><p>
Set the buffer allocation method. Types are
XML_BUFFER_ALLOC_EXACT - use exact sizes, keeps memory usage down
XML_BUFFER_ALLOC_DOUBLEIT - double buffer when extra needed,
improves performance</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>scheme</tt></i> :</span></td><td> allocation method to use
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetBufferAllocationScheme"></a>xmlGetBufferAllocationScheme ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> xmlGetBufferAllocationScheme
(void);</pre><p>
Types are
XML_BUFFER_ALLOC_EXACT - use exact sizes, keeps memory usage down
XML_BUFFER_ALLOC_DOUBLEIT - double buffer when extra needed,
improves performance</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the current allocation scheme
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCreate"></a>xmlBufferCreate ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> xmlBufferCreate (void);</pre><p>
routine to create an XML buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new structure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCreateSize"></a>xmlBufferCreateSize ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> xmlBufferCreateSize (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="size-t">size_t</GTKDOCLINK> size);</pre><p>
routine to create an XML buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> initial size of buffer
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new structure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferResize"></a>xmlBufferResize ()</h3><pre class="programlisting">int xmlBufferResize (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
unsigned int size);</pre><p>
Resize a buffer to accommodate minimum size of <i><tt>size</tt></i>.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to resize
</td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> the desired size
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 in case of problems, 1 otherwise
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferFree"></a>xmlBufferFree ()</h3><pre class="programlisting">void xmlBufferFree (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
Frees an XML buffer. It frees both the content and the structure which
encapsulate it.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to free
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferDump"></a>xmlBufferDump ()</h3><pre class="programlisting">int xmlBufferDump (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *file,
<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
Dumps an XML buffer to a FILE *.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>file</tt></i> :</span></td><td> the file output
</td></tr><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to dump
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> written
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferAdd"></a>xmlBufferAdd ()</h3><pre class="programlisting">void xmlBufferAdd (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
int len);</pre><p>
Add a string range to an XML buffer. if len == -1, the length of
str is recomputed.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to dump
</td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td> the <a href="libxml-tree.html#xmlChar">xmlChar</a> string
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> to add
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferAddHead"></a>xmlBufferAddHead ()</h3><pre class="programlisting">void xmlBufferAddHead (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
int len);</pre><p>
Add a string range to the beginning of an XML buffer.
if len == -1, the length of <i><tt>str</tt></i> is recomputed.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer
</td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td> the <a href="libxml-tree.html#xmlChar">xmlChar</a> string
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> to add
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCat"></a>xmlBufferCat ()</h3><pre class="programlisting">void xmlBufferCat (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str);</pre><p>
Append a zero terminated string to an XML buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to dump
</td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td> the <a href="libxml-tree.html#xmlChar">xmlChar</a> string
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferCCat"></a>xmlBufferCCat ()</h3><pre class="programlisting">void xmlBufferCCat (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const char *str);</pre><p>
Append a zero terminated C string to an XML buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to dump
</td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td> the C char string
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferShrink"></a>xmlBufferShrink ()</h3><pre class="programlisting">int xmlBufferShrink (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
unsigned int len);</pre><p>
Remove the beginning of an XML buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to dump
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the number of xmlChar to remove
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of <a href="libxml-tree.html#xmlChar">xmlChar</a> removed, or -1 in case of failure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferGrow"></a>xmlBufferGrow ()</h3><pre class="programlisting">int xmlBufferGrow (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
unsigned int len);</pre><p>
Grow the available space of an XML buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the minimum free size to allocate
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new available space or -1 in case of error
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferEmpty"></a>xmlBufferEmpty ()</h3><pre class="programlisting">void xmlBufferEmpty (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
empty a buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferContent"></a>xmlBufferContent ()</h3><pre class="programlisting">const <a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlBufferContent (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
Function to extract the content of a buffer</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the internal content
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferSetAllocationScheme"></a>xmlBufferSetAllocationScheme ()</h3><pre class="programlisting">void xmlBufferSetAllocationScheme (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
<a href="libxml-tree.html#xmlBufferAllocationScheme">xmlBufferAllocationScheme</a> scheme);</pre><p>
Sets the allocation scheme for this buffer</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer to tune
</td></tr><tr><td><span class="term"><i><tt>scheme</tt></i> :</span></td><td> allocation scheme to use
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferLength"></a>xmlBufferLength ()</h3><pre class="programlisting">int xmlBufferLength (const <a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf);</pre><p>
Function to get the length of a buffer</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the buffer
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the length of data in the internal content
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCreateIntSubset"></a>xmlCreateIntSubset ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> xmlCreateIntSubset (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);</pre><p>
Create the internal subset of a document</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document pointer
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the DTD name
</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i> :</span></td><td> the external (PUBLIC) ID
</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i> :</span></td><td> the system ID
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new DTD structure
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDtd"></a>xmlNewDtd ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> xmlNewDtd (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);</pre><p>
Creation of a new DTD for the external subset. To create an
internal subset, use <a href="libxml-tree.html#xmlCreateIntSubset">xmlCreateIntSubset</a>().</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document pointer
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the DTD name
</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i> :</span></td><td> the external ID
</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i> :</span></td><td> the system ID
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new DTD structure
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetIntSubset"></a>xmlGetIntSubset ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> xmlGetIntSubset (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
Get the internal subset of a document</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document pointer
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the DTD structure or NULL if not found
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeDtd"></a>xmlFreeDtd ()</h3><pre class="programlisting">void xmlFreeDtd (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> cur);</pre><p>
Free a DTD structure.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the DTD structure to free up
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewGlobalNs"></a>xmlNewGlobalNs ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> xmlNewGlobalNs (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);</pre><p>
Creation of a Namespace, the old way using PI and without scoping
DEPRECATED !!!
It now create a namespace on the root element of the document if found.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document carrying the namespace
</td></tr><tr><td><span class="term"><i><tt>href</tt></i> :</span></td><td> the URI associated
</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td> the prefix for the namespace
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>NULL this functionality had been removed
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNs"></a>xmlNewNs ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> xmlNewNs (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *prefix);</pre><p>
Creation of a new Namespace. This function will refuse to create
a namespace with a similar prefix than an existing one present on this
node.
We use href==NULL in the case of an element creation where the namespace
was not defined.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the element carrying the namespace
</td></tr><tr><td><span class="term"><i><tt>href</tt></i> :</span></td><td> the URI associated
</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td> the prefix for the namespace
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a new namespace pointer or NULL
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNs"></a>xmlFreeNs ()</h3><pre class="programlisting">void xmlFreeNs (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
Free up the structures associated to a namespace</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the namespace pointer
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNsList"></a>xmlFreeNsList ()</h3><pre class="programlisting">void xmlFreeNsList (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
Free up all the structures associated to the chained namespaces.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the first namespace pointer
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDoc"></a>xmlNewDoc ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> xmlNewDoc (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *version);</pre><p>
Creates a new XML document</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>version</tt></i> :</span></td><td> xmlChar string giving the version of XML "1.0"
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a new document
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeDoc"></a>xmlFreeDoc ()</h3><pre class="programlisting">void xmlFreeDoc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);</pre><p>
Free up all the structures used by a document, tree included.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> pointer to the document
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocProp"></a>xmlNewDocProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlNewDocProp (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
Create a new property carried by a document.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the name of the attribute
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value of the attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewProp"></a>xmlNewProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlNewProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
Create a new property carried by a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the holding node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the name of the attribute
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value of the attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNsProp"></a>xmlNewNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlNewNsProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
Create a new property tagged with a namespace and carried by a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the holding node
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> the namespace
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the name of the attribute
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value of the attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNsPropEatName"></a>xmlNewNsPropEatName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlNewNsPropEatName (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
Create a new property tagged with a namespace and carried by a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the holding node
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> the namespace
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the name of the attribute
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value of the attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the attribute
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreePropList"></a>xmlFreePropList ()</h3><pre class="programlisting">void xmlFreePropList (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
Free a property and all its siblings, all the children are freed too.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the first property in the list
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeProp"></a>xmlFreeProp ()</h3><pre class="programlisting">void xmlFreeProp (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
Free one attribute, all the content is freed too</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> an attribute
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyProp"></a>xmlCopyProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlCopyProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
Do a copy of the attribute.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>target</tt></i> :</span></td><td> the element where the attribute will be grafted
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyPropList"></a>xmlCopyPropList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlCopyPropList (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> target,
<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
Do a copy of an attribute list.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>target</tt></i> :</span></td><td> the element where the attributes will be grafted
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the first attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyDtd"></a>xmlCopyDtd ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> xmlCopyDtd (<a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd);</pre><p>
Do a copy of the dtd.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>dtd</tt></i> :</span></td><td> the dtd
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlDtdPtr">xmlDtdPtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyDoc"></a>xmlCopyDoc ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> xmlCopyDoc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
int recursive);</pre><p>
Do a copy of the document info. If recursive, the content tree will
be copied too as well as DTD, namespaces and entities.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i> :</span></td><td> if 1 do a recursive copy.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocNode"></a>xmlNewDocNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewDocNode (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new node element within a document. <i><tt>ns</tt></i> and <i><tt>content</tt></i>
are optional (NULL).
NOTE: <i><tt>content</tt></i> is supposed to be a piece of XML CDATA, so it allow entities
references, but XML special chars need to be escaped first by using
<a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>(). Use <a href="libxml-tree.html#xmlNewDocRawNode">xmlNewDocRawNode</a>() if you don't
need entities support.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> namespace if any
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the node name
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the XML text content if any
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocNodeEatName"></a>xmlNewDocNodeEatName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewDocNodeEatName (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new node element within a document. <i><tt>ns</tt></i> and <i><tt>content</tt></i>
are optional (NULL).
NOTE: <i><tt>content</tt></i> is supposed to be a piece of XML CDATA, so it allow entities
references, but XML special chars need to be escaped first by using
<a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>(). Use <a href="libxml-tree.html#xmlNewDocRawNode">xmlNewDocRawNode</a>() if you don't
need entities support.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> namespace if any
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the node name
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the XML text content if any
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocRawNode"></a>xmlNewDocRawNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewDocRawNode (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new node element within a document. <i><tt>ns</tt></i> and <i><tt>content</tt></i>
are optional (NULL).</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> namespace if any
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the node name
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the text content if any
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNode"></a>xmlNewNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewNode (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Creation of a new node element. <i><tt>ns</tt></i> is optional (NULL).</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> namespace if any
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the node name
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewNodeEatName"></a>xmlNewNodeEatName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewNodeEatName (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Creation of a new node element. <i><tt>ns</tt></i> is optional (NULL).</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> namespace if any
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the node name
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewChild"></a>xmlNewChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewChild (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new child element, added at the end of <i><tt>parent</tt></i> children list.
<i><tt>ns</tt></i> and <i><tt>content</tt></i> parameters are optional (NULL). If content is non NULL,
a child list containing the TEXTs and ENTITY_REFs node will be created.
NOTE: <i><tt>content</tt></i> is supposed to be a piece of XML CDATA, so it allow entities
references, but XML special chars need to be escaped first by using
<a href="libxml-entities.html#xmlEncodeEntitiesReentrant">xmlEncodeEntitiesReentrant</a>(). Use <a href="libxml-tree.html#xmlNewTextChild">xmlNewTextChild</a>() if entities
support is not needed.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td> the parent node
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> a namespace if any
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the name of the child
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the XML content of the child if any.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewTextChild"></a>xmlNewTextChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewTextChild (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new child element, added at the end of <i><tt>parent</tt></i> children list.
<i><tt>ns</tt></i> and <i><tt>content</tt></i> parameters are optional (NULL). If content is non NULL,
a child TEXT node will be created containing the string content.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td> the parent node
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> a namespace if any
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the name of the child
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the text content of the child if any.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocText"></a>xmlNewDocText ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewDocText (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new text node within a document.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the text content
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewText"></a>xmlNewText ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewText (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new text node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the text content
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewPI"></a>xmlNewPI ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewPI (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a processing instruction element.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the processing instruction name
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the PI content
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocTextLen"></a>xmlNewDocTextLen ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewDocTextLen (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);</pre><p>
Creation of a new text node with an extra content length parameter. The
text node pertain to a given document.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the text content
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the text len.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewTextLen"></a>xmlNewTextLen ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewTextLen (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);</pre><p>
Creation of a new text node with an extra parameter for the content's length</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the text content
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the text len.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocComment"></a>xmlNewDocComment ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewDocComment (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new node containing a comment within a document.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the comment content
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewComment"></a>xmlNewComment ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewComment (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Creation of a new node containing a comment.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the comment content
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewCDataBlock"></a>xmlNewCDataBlock ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewCDataBlock (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);</pre><p>
Creation of a new node containing a CDATA block.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the CDATA block content content
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the length of the block
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewCharRef"></a>xmlNewCharRef ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewCharRef (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Creation of a new character reference node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the char ref string, starting with # or "&# ... ;"
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewReference"></a>xmlNewReference ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewReference (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Creation of a new reference node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the reference name, or the reference string with & and ;
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNode"></a>xmlCopyNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlCopyNode (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
int recursive);</pre><p>
Do a copy of the node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i> :</span></td><td> if 1 do a recursive copy.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocCopyNode"></a>xmlDocCopyNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlDocCopyNode (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
int recursive);</pre><p>
Do a copy of the node to a given document.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>recursive</tt></i> :</span></td><td> if 1 do a recursive copy.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNodeList"></a>xmlCopyNodeList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlCopyNodeList (const <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
Do a recursive copy of the node list.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the first node in the list.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewDocFragment"></a>xmlNewDocFragment ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlNewDocFragment (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
Creation of a new Fragment node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document owning the fragment
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the new node object.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetLineNo"></a>xmlGetLineNo ()</h3><pre class="programlisting"><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="long">long</GTKDOCLINK> xmlGetLineNo (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
Get line number of node. this requires activation of this option
before invoking the parser by calling xmlLineNumbersDefault(1)</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> valid node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the line number if successful, -1 otherwise
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNodePath"></a>xmlGetNodePath ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlGetNodePath (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
Build a structure based Path for the given node</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> a node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new path or NULL in case of error. The caller must free
the returned string
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocGetRootElement"></a>xmlDocGetRootElement ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlDocGetRootElement (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
Get the root element of the document (doc->children is a list
containing possibly comments, PIs, etc ...).</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> for the root or NULL
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetLastChild"></a>xmlGetLastChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlGetLastChild (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent);</pre><p>
Search the last child of a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td> the parent node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the last child or NULL if none.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeIsText"></a>xmlNodeIsText ()</h3><pre class="programlisting">int xmlNodeIsText (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
Is this node a Text node ?</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 yes, 0 no
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsBlankNode"></a>xmlIsBlankNode ()</h3><pre class="programlisting">int xmlIsBlankNode (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
Checks whether this node is an empty or whitespace only
(and possibly ignorable) text-node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 yes, 0 no
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocSetRootElement"></a>xmlDocSetRootElement ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlDocSetRootElement (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> root);</pre><p>
Set the root element of the document (doc->children is a list
containing possibly comments, PIs, etc ...).</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>root</tt></i> :</span></td><td> the new document root element
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the old root element if any was found
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetName"></a>xmlNodeSetName ()</h3><pre class="programlisting">void xmlNodeSetName (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Set (or reset) the name of a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being changed
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the new tag name
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddChild"></a>xmlAddChild ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlAddChild (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Add a new node to <i><tt>parent</tt></i>, at the end of the child (or property) list
merging adjacent TEXT nodes (in which case <i><tt>cur</tt></i> is freed)
If the new node is ATTRIBUTE, it is added into properties instead of children.
If there is an attribute with equal name, it is first destroyed.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td> the parent node
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the child node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the child or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddChildList"></a>xmlAddChildList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlAddChildList (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> parent,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Add a list of node at the end of the child list of the parent
merging adjacent TEXT nodes (<i><tt>cur</tt></i> may be freed)</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>parent</tt></i> :</span></td><td> the parent node
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the first node in the list
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the last child or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlReplaceNode"></a>xmlReplaceNode ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlReplaceNode (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> old,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Unlink the old node from it's current context, prune the new one
at the same place. If <i><tt>cur</tt></i> was already inserted in a document it is
first unlinked from its existing context.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>old</tt></i> :</span></td><td> the old node
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the <i><tt>old</tt></i> node
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddSibling"></a>xmlAddSibling ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlAddSibling (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);</pre><p>
Add a new element <i><tt>elem</tt></i> to the list of siblings of <i><tt>cur</tt></i>
merging adjacent TEXT nodes (<i><tt>elem</tt></i> may be freed)
If the new element was already inserted in a document it is
first unlinked from its existing context.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the child node
</td></tr><tr><td><span class="term"><i><tt>elem</tt></i> :</span></td><td> the new node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new element or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddPrevSibling"></a>xmlAddPrevSibling ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlAddPrevSibling (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);</pre><p>
Add a new node <i><tt>elem</tt></i> as the previous sibling of <i><tt>cur</tt></i>
merging adjacent TEXT nodes (<i><tt>elem</tt></i> may be freed)
If the new node was already inserted in a document it is
first unlinked from its existing context.
If the new node is ATTRIBUTE, it is added into properties instead of children.
If there is an attribute with equal name, it is first destroyed.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the child node
</td></tr><tr><td><span class="term"><i><tt>elem</tt></i> :</span></td><td> the new node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new node or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlAddNextSibling"></a>xmlAddNextSibling ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlAddNextSibling (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> elem);</pre><p>
Add a new node <i><tt>elem</tt></i> as the next sibling of <i><tt>cur</tt></i>
If the new node was already inserted in a document it is
first unlinked from its existing context.
As a result of text merging <i><tt>elem</tt></i> may be freed.
If the new node is ATTRIBUTE, it is added into properties instead of children.
If there is an attribute with equal name, it is first destroyed.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the child node
</td></tr><tr><td><span class="term"><i><tt>elem</tt></i> :</span></td><td> the new node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new node or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlUnlinkNode"></a>xmlUnlinkNode ()</h3><pre class="programlisting">void xmlUnlinkNode (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Unlink a node from it's current context, the node is not freed</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextMerge"></a>xmlTextMerge ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlTextMerge (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> first,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> second);</pre><p>
Merge two text nodes into one</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>first</tt></i> :</span></td><td> the first text node
</td></tr><tr><td><span class="term"><i><tt>second</tt></i> :</span></td><td> the second text node being merged
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the first text node augmented
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlTextConcat"></a>xmlTextConcat ()</h3><pre class="programlisting">int xmlTextConcat (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);</pre><p>
Concat the given string at the end of the existing node content</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the content
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> <i><tt>content</tt></i> length
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>-1 in case of error, 0 otherwise
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNodeList"></a>xmlFreeNodeList ()</h3><pre class="programlisting">void xmlFreeNodeList (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Free a node and all its siblings, this is a recursive behaviour, all
the children are freed too.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the first node in the list
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeNode"></a>xmlFreeNode ()</h3><pre class="programlisting">void xmlFreeNode (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Free a node, this is a recursive behaviour, all the children are freed too.
This doesn't unlink the child from the list, use <a href="libxml-tree.html#xmlUnlinkNode">xmlUnlinkNode</a>() first.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetTreeDoc"></a>xmlSetTreeDoc ()</h3><pre class="programlisting">void xmlSetTreeDoc (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
update all nodes under the tree to point to the right document</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>tree</tt></i> :</span></td><td> the top element
</td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetListDoc"></a>xmlSetListDoc ()</h3><pre class="programlisting">void xmlSetListDoc (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
update all nodes in the list to point to the right document</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>list</tt></i> :</span></td><td> the first element
</td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSearchNs"></a>xmlSearchNs ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> xmlSearchNs (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);</pre><p>
Search a Ns registered under a given name space for a document.
recurse on the parents until it finds the defined namespace
or return NULL otherwise.
<i><tt>nameSpace</tt></i> can be NULL, this is a search for the default namespace.
We don't allow to cross entities boundaries. If you don't declare
the namespace within those you will be in troubles !!! A warning
is generated to cover this case.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the current node
</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i> :</span></td><td> the namespace prefix
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the namespace pointer or NULL.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSearchNsByHref"></a>xmlSearchNsByHref ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> xmlSearchNsByHref (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *href);</pre><p>
Search a Ns aliasing a given URI. Recurse on the parents until it finds
the defined namespace or return NULL otherwise.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the current node
</td></tr><tr><td><span class="term"><i><tt>href</tt></i> :</span></td><td> the namespace value
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the namespace pointer or NULL.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNsList"></a>xmlGetNsList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>* xmlGetNsList (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node);</pre><p>
Search all the namespace applying to a given element.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the current node
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>an NULL terminated array of all the <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> found
that need to be freed by the caller or NULL if no
namespace if defined
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetNs"></a>xmlSetNs ()</h3><pre class="programlisting">void xmlSetNs (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns);</pre><p>
Associate a namespace to a node, a posteriori.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> a node in the document
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> a namespace pointer
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNamespace"></a>xmlCopyNamespace ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> xmlCopyNamespace (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
Do a copy of the namespace.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the namespace
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyNamespaceList"></a>xmlCopyNamespaceList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> xmlCopyNamespaceList (<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> cur);</pre><p>
Do a copy of an namespace list.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the first namespace
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> a new <a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a>, or NULL in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetProp"></a>xmlSetProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlSetProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
Set (or reset) an attribute carried by a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the attribute value
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute pointer.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetProp"></a>xmlGetProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlGetProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Search and get the value of an attribute associated to a node
This does the entity substitution.
This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
default declaration values unless DTD use has been turned off.
NOTE: this function acts independently of namespaces associated
to the attribute. Use <a href="libxml-tree.html#xmlGetNsProp">xmlGetNsProp</a>() or <a href="libxml-tree.html#xmlGetNoNsProp">xmlGetNoNsProp</a>()
for namespace aware processing.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute value or NULL if not found.
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNoNsProp"></a>xmlGetNoNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlGetNoNsProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Search and get the value of an attribute associated to a node
This does the entity substitution.
This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
default declaration values unless DTD use has been turned off.
This function is similar to xmlGetProp except it will accept only
an attribute in no namespace.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute value or NULL if not found.
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlHasProp"></a>xmlHasProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlHasProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Search an attribute associated to a node
This function also looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
default declaration values unless DTD use has been turned off.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute or the attribute declaration or NULL if
neither was found.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlHasNsProp"></a>xmlHasNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlHasNsProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);</pre><p>
Search for an attribute associated to a node
This attribute has to be anchored in the namespace specified.
This does the entity substitution.
This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
default declaration values unless DTD use has been turned off.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i> :</span></td><td> the URI of the namespace
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute or the attribute declaration or NULL
if neither was found.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetNsProp"></a>xmlSetNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> xmlSetNsProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
Set (or reset) an attribute carried by a node.
The ns structure must be in scope, this is not checked.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> the namespace definition
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the attribute value
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute pointer.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetNsProp"></a>xmlGetNsProp ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlGetNsProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *nameSpace);</pre><p>
Search and get the value of an attribute associated to a node
This attribute has to be anchored in the namespace specified.
This does the entity substitution.
This function looks in DTD attribute declaration for <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK> or
default declaration values unless DTD use has been turned off.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><i><tt>nameSpace</tt></i> :</span></td><td> the URI of the namespace
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the attribute value or NULL if not found.
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlStringGetNodeList"></a>xmlStringGetNodeList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlStringGetNodeList (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
Parse the value string and build the node list associated. Should
produce a flat tree with only TEXTs and ENTITY_REFs.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value of the attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the first child
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlStringLenGetNodeList"></a>xmlStringLenGetNodeList ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> xmlStringLenGetNodeList (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *value,
int len);</pre><p>
Parse the value string and build the node list associated. Should
produce a flat tree with only TEXTs and ENTITY_REFs.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td> the value of the text
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the length of the string value
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the first child
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeListGetString"></a>xmlNodeListGetString ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNodeListGetString (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
int inLine);</pre><p>
Build the string equivalent to the text contained in the Node list
made of TEXTs and ENTITY_REFs</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>list</tt></i> :</span></td><td> a Node list
</td></tr><tr><td><span class="term"><i><tt>inLine</tt></i> :</span></td><td> should we replace entity contents or show their external form
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the string copy, the caller must free it with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeListGetRawString"></a>xmlNodeListGetRawString ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNodeListGetRawString (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> list,
int inLine);</pre><p>
Builds the string equivalent to the text contained in the Node list
made of TEXTs and ENTITY_REFs, contrary to <a href="libxml-tree.html#xmlNodeListGetString">xmlNodeListGetString</a>()
this function doesn't do any character encoding handling.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>list</tt></i> :</span></td><td> a Node list
</td></tr><tr><td><span class="term"><i><tt>inLine</tt></i> :</span></td><td> should we replace entity contents or show their external form
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the string copy, the caller must free it with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetContent"></a>xmlNodeSetContent ()</h3><pre class="programlisting">void xmlNodeSetContent (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Replace the content of a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being modified
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the new value of the content
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetContentLen"></a>xmlNodeSetContentLen ()</h3><pre class="programlisting">void xmlNodeSetContentLen (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);</pre><p>
Replace the content of a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being modified
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> the new value of the content
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the size of <i><tt>content</tt></i>
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeAddContent"></a>xmlNodeAddContent ()</h3><pre class="programlisting">void xmlNodeAddContent (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content);</pre><p>
Append the extra substring to the node content.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being modified
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> extra content
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeAddContentLen"></a>xmlNodeAddContentLen ()</h3><pre class="programlisting">void xmlNodeAddContentLen (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *content,
int len);</pre><p>
Append the extra substring to the node content.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being modified
</td></tr><tr><td><span class="term"><i><tt>content</tt></i> :</span></td><td> extra content
</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td> the size of <i><tt>content</tt></i>
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetContent"></a>xmlNodeGetContent ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNodeGetContent (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Read the value of a node, this can be either the text carried
directly by this node if it's a TEXT node or the aggregate string
of the values carried by this node child's (TEXT and ENTITY_REF).
Entity references are substituted.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being read
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a new <a href="libxml-tree.html#xmlChar">xmlChar</a> * or NULL if no content is available.
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetLang"></a>xmlNodeGetLang ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNodeGetLang (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Searches the language of a node, i.e. the values of the xml:lang
attribute or the one carried by the nearest ancestor.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being checked
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the lang value, or NULL if not found
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetLang"></a>xmlNodeSetLang ()</h3><pre class="programlisting">void xmlNodeSetLang (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *lang);</pre><p>
Set the language of a node, i.e. the values of the xml:lang
attribute.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being changed
</td></tr><tr><td><span class="term"><i><tt>lang</tt></i> :</span></td><td> the language description
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetSpacePreserve"></a>xmlNodeGetSpacePreserve ()</h3><pre class="programlisting">int xmlNodeGetSpacePreserve (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Searches the space preserving behaviour of a node, i.e. the values
of the xml:space attribute or the one carried by the nearest
ancestor.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being checked
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>-1 if xml:space is not inherited, 0 if "default", 1 if "preserve"
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetSpacePreserve"></a>xmlNodeSetSpacePreserve ()</h3><pre class="programlisting">void xmlNodeSetSpacePreserve (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
int val);</pre><p>
Set (or reset) the space preserving behaviour of a node, i.e. the
value of the xml:space attribute.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being changed
</td></tr><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td> the xml:space value ("0": default, 1: "preserve")
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeGetBase"></a>xmlNodeGetBase ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNodeGetBase (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Searches for the BASE URL. The code should work on both XML
and HTML document even if base mechanisms are completely different.
It returns the base as defined in RFC 2396 sections
5.1.1. Base URI within Document Content
and
5.1.2. Base URI from the Encapsulating Entity
However it does not return the document base (5.1.3), use
<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xmlDocumentGetBase">xmlDocumentGetBase</GTKDOCLINK>() for this</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document the node pertains to
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being checked
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>a pointer to the base URL, or NULL if not found
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeSetBase"></a>xmlNodeSetBase ()</h3><pre class="programlisting">void xmlNodeSetBase (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
<a href="libxml-tree.html#xmlChar">xmlChar</a> *uri);</pre><p>
Set (or reset) the base URI of a node, i.e. the value of the
xml:base attribute.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the node being changed
</td></tr><tr><td><span class="term"><i><tt>uri</tt></i> :</span></td><td> the new base URI
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlRemoveProp"></a>xmlRemoveProp ()</h3><pre class="programlisting">int xmlRemoveProp (<a href="libxml-tree.html#xmlAttrPtr">xmlAttrPtr</a> cur);</pre><p>
Unlink and free one attribute, all the content is freed too
Note this doesn't work for namespace definition attributes</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> an attribute
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if success and -1 in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlUnsetProp"></a>xmlUnsetProp ()</h3><pre class="programlisting">int xmlUnsetProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Remove an attribute carried by a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if successful, -1 if not found
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlUnsetNsProp"></a>xmlUnsetNsProp ()</h3><pre class="programlisting">int xmlUnsetNsProp (<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> node,
<a href="libxml-tree.html#xmlNsPtr">xmlNsPtr</a> ns,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name);</pre><p>
Remove an attribute carried by a node.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>node</tt></i> :</span></td><td> the node
</td></tr><tr><td><span class="term"><i><tt>ns</tt></i> :</span></td><td> the namespace definition
</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td> the attribute name
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if successful, -1 if not found
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferWriteCHAR"></a>xmlBufferWriteCHAR ()</h3><pre class="programlisting">void xmlBufferWriteCHAR (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);</pre><p>
routine which manages and grows an output buffer. This one adds
xmlChars at the end of the buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the XML buffer
</td></tr><tr><td><span class="term"><i><tt>string</tt></i> :</span></td><td> the string to add
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferWriteChar"></a>xmlBufferWriteChar ()</h3><pre class="programlisting">void xmlBufferWriteChar (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const char *string);</pre><p>
routine which manage and grows an output buffer. This one add
C chars at the end of the array.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the XML buffer output
</td></tr><tr><td><span class="term"><i><tt>string</tt></i> :</span></td><td> the string to add
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlBufferWriteQuotedString"></a>xmlBufferWriteQuotedString ()</h3><pre class="programlisting">void xmlBufferWriteQuotedString (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *string);</pre><p>
routine which manage and grows an output buffer. This one writes
a quoted or double quoted <a href="libxml-tree.html#xmlChar">xmlChar</a> string, checking first if it holds
quote or double-quotes internally</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the XML buffer output
</td></tr><tr><td><span class="term"><i><tt>string</tt></i> :</span></td><td> the string to add
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlReconciliateNs"></a>xmlReconciliateNs ()</h3><pre class="programlisting">int xmlReconciliateNs (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> tree);</pre><p>
This function checks that all the namespaces declared within the given
tree are properly declared. This is needed for example after Copy or Cut
and then paste operations. The subtree may still hold pointers to
namespace declarations outside the subtree or invalid/masked. As much
as possible the function try to reuse the existing namespaces found in
the new environment. If not possible the new namespaces are redeclared
on <i><tt>tree</tt></i> at the top of the given subtree.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>tree</tt></i> :</span></td><td> a node defining the subtree to reconciliate
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of namespace declarations created or -1 in case of error.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpFormatMemory"></a>xmlDocDumpFormatMemory ()</h3><pre class="programlisting">void xmlDocDumpFormatMemory (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
int *size,
int format);</pre><p>
Dump an XML document in memory and return the <a href="libxml-tree.html#xmlChar">xmlChar</a> * and it's size.
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>mem</tt></i> :</span></td><td> OUT: the memory pointer
</td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> OUT: the memory length
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces been added
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpMemory"></a>xmlDocDumpMemory ()</h3><pre class="programlisting">void xmlDocDumpMemory (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **mem,
int *size);</pre><p>
Dump an XML document in memory and return the <a href="libxml-tree.html#xmlChar">xmlChar</a> * and it's size.
It's up to the caller to free the memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>mem</tt></i> :</span></td><td> OUT: the memory pointer
</td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> OUT: the memory length
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpMemoryEnc"></a>xmlDocDumpMemoryEnc ()</h3><pre class="programlisting">void xmlDocDumpMemoryEnc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
int *doc_txt_len,
const char *txt_encoding);</pre><p>
Dump the current DOM tree into memory using the character encoding specified
by the caller. Note it is up to the caller of this function to free the
allocated memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i> :</span></td><td> Document to generate XML text from
</td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i> :</span></td><td> Memory pointer for allocated XML text
</td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i> :</span></td><td> Length of the generated XML text
</td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i> :</span></td><td> Character encoding to use when generating XML text
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDumpFormatMemoryEnc"></a>xmlDocDumpFormatMemoryEnc ()</h3><pre class="programlisting">void xmlDocDumpFormatMemoryEnc (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> out_doc,
<a href="libxml-tree.html#xmlChar">xmlChar</a> **doc_txt_ptr,
int *doc_txt_len,
const char *txt_encoding,
int format);</pre><p>
Dump the current DOM tree into memory using the character encoding specified
by the caller. Note it is up to the caller of this function to free the
allocated memory with <a href="libxml-globals.html#xmlFree">xmlFree</a>().
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>out_doc</tt></i> :</span></td><td> Document to generate XML text from
</td></tr><tr><td><span class="term"><i><tt>doc_txt_ptr</tt></i> :</span></td><td> Memory pointer for allocated XML text
</td></tr><tr><td><span class="term"><i><tt>doc_txt_len</tt></i> :</span></td><td> Length of the generated XML text
</td></tr><tr><td><span class="term"><i><tt>txt_encoding</tt></i> :</span></td><td> Character encoding to use when generating XML text
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces been added
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocFormatDump"></a>xmlDocFormatDump ()</h3><pre class="programlisting">int xmlDocFormatDump (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
int format);</pre><p>
Dump an XML document to an open FILE.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>f</tt></i> :</span></td><td> the FILE*
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces been added
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDocDump"></a>xmlDocDump ()</h3><pre class="programlisting">int xmlDocDump (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);</pre><p>
Dump an XML document to an open FILE.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>f</tt></i> :</span></td><td> the FILE*
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlElemDump"></a>xmlElemDump ()</h3><pre class="programlisting">void xmlElemDump (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *f,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur);</pre><p>
Dump an XML/HTML node, recursive behaviour, children are printed too.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>f</tt></i> :</span></td><td> the FILE * for the output
</td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the current node
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFile"></a>xmlSaveFile ()</h3><pre class="programlisting">int xmlSaveFile (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur);</pre><p>
Dump an XML document to a file. Will use compression if
compiled in and enabled. If <i><tt>filename</tt></i> is "-" the stdout file is
used.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> the filename (or URL)
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFormatFile"></a>xmlSaveFormatFile ()</h3><pre class="programlisting">int xmlSaveFormatFile (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
int format);</pre><p>
Dump an XML document to a file. Will use compression if
compiled in and enabled. If <i><tt>filename</tt></i> is "-" the stdout file is
used. If <i><tt>format</tt></i> is set then the document will be indented on output.
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> the filename (or URL)
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces been added
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeDump"></a>xmlNodeDump ()</h3><pre class="programlisting">int xmlNodeDump (<a href="libxml-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
int level,
int format);</pre><p>
Dump an XML node, recursive behaviour,children are printed too.
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the XML buffer output
</td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the current node
</td></tr><tr><td><span class="term"><i><tt>level</tt></i> :</span></td><td> the imbrication level for indenting
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> is formatting allowed
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of bytes written to the buffer or -1 in case of error
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFileTo"></a>xmlSaveFileTo ()</h3><pre class="programlisting">int xmlSaveFileTo (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding);</pre><p>
Dump an XML document to an I/O buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> an output I/O buffer
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> the encoding if any assuming the I/O layer handles the trancoding
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFormatFileTo"></a>xmlSaveFormatFileTo ()</h3><pre class="programlisting">int xmlSaveFormatFileTo (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding,
int format);</pre><p>
Dump an XML document to an I/O buffer.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> an output I/O buffer
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> the encoding if any assuming the I/O layer handles the trancoding
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces been added
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNodeDumpOutput"></a>xmlNodeDumpOutput ()</h3><pre class="programlisting">void xmlNodeDumpOutput (<a href="libxml-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> cur,
int level,
int format,
const char *encoding);</pre><p>
Dump an XML node, recursive behaviour, children are printed too.
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buf</tt></i> :</span></td><td> the XML buffer output
</td></tr><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the current node
</td></tr><tr><td><span class="term"><i><tt>level</tt></i> :</span></td><td> the imbrication level for indenting
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> is formatting allowed
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> an optional encoding string
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFormatFileEnc"></a>xmlSaveFormatFileEnc ()</h3><pre class="programlisting">int xmlSaveFormatFileEnc (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding,
int format);</pre><p>
Dump an XML document to a file or an URL.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> the filename or URL to output
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document being saved
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> the name of the encoding to use or NULL.
</td></tr><tr><td><span class="term"><i><tt>format</tt></i> :</span></td><td> should formatting spaces be added.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of bytes written or -1 in case of error.
Note that <i><tt>format</tt></i> = 1 provide node indenting only if xmlIndentTreeOutput = 1
or xmlKeepBlanksDefault(0) was called
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSaveFileEnc"></a>xmlSaveFileEnc ()</h3><pre class="programlisting">int xmlSaveFileEnc (const char *filename,
<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> cur,
const char *encoding);</pre><p>
Dump an XML document, converting it to the given encoding</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> the filename (or URL)
</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> the name of an encoding (or NULL)
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> the number of bytes written or -1 in case of failure.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsXHTML"></a>xmlIsXHTML ()</h3><pre class="programlisting">int xmlIsXHTML (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *systemID,
const <a href="libxml-tree.html#xmlChar">xmlChar</a> *publicID);</pre><p>
Try to find if the document correspond to an XHTML DTD</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>systemID</tt></i> :</span></td><td> the system identifier
</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i> :</span></td><td> the public identifier
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>1 if true, 0 if not and -1 in case of error
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetDocCompressMode"></a>xmlGetDocCompressMode ()</h3><pre class="programlisting">int xmlGetDocCompressMode (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc);</pre><p>
get the compression ratio for a document, ZLIB based</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 (uncompressed) to 9 (max compression)
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetDocCompressMode"></a>xmlSetDocCompressMode ()</h3><pre class="programlisting">void xmlSetDocCompressMode (<a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> doc,
int mode);</pre><p>
set the compression ratio for a document, ZLIB based
Correct values: 0 (uncompressed) to 9 (max compression)</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>doc</tt></i> :</span></td><td> the document
</td></tr><tr><td><span class="term"><i><tt>mode</tt></i> :</span></td><td> the compression ratio
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlGetCompressMode"></a>xmlGetCompressMode ()</h3><pre class="programlisting">int xmlGetCompressMode (void);</pre><p>
get the default compression mode used, ZLIB based.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 (uncompressed) to 9 (max compression)
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetCompressMode"></a>xmlSetCompressMode ()</h3><pre class="programlisting">void xmlSetCompressMode (int mode);</pre><p>
set the default compression mode used, ZLIB based
Correct values: 0 (uncompressed) to 9 (max compression)</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>mode</tt></i> :</span></td><td> the compression ratio
</td></tr></tbody></table></div></div></div></div><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-SAX.html"><b><< SAX</b></a></td><td align="right"><a accesskey="n" href="libxml-entities.html"><b>entities >></b></a></td></tr></table></body></html>