I am using the xmlxpatheval to evaluate the xpath expressions. In particular, The xpath string " //* " . This query worked successfully on a file that was 5MB but when the file size was updated to 10Mb the xmlXpathEval function seems to never return. The Context is set to root node. I waited about 20-25 minutes before I had to kill it. Also no errors are reported. I am working on Solaris 2.7.
The 10MB file was only created for testing purposes. I realize that usually people are not going to run into the same situation. I would still like to find out if there is way around it and also if there are any file size limitations in libxml?
The following information is repeated in my file until the size of file is 10MB.
<?xml version= '1.0'?>
<!DOCTYPE ADDRESSBOOK [
<!ELEMENT ADDRESSBOOK (PERSON)*>
<!ELEMENT PERSON (LASTNAME, FIRSTNAME, COMPANY, EMAIL, PHONE)>
<!ELEMENT LASTNAME (#PCDATA)>
<!ELEMENT FIRSTNAME (#PCDATA)>
<!ELEMENT COMPANY (#PCDATA)>
<!ELEMENT EMAIL (#PCDATA)>
<!ELEMENT PHONE (#PCDATA)>
<!ENTITY PHONENUMBER '540-552-7788'>
<!ATTLIST PERSON gender CDATA #IMPLIED>
]>
<ADDRESSBOOK>
<!--new information-->
<PERSON gender='male'>
<LASTNAME>Idris</LASTNAME>
<FIRSTNAME>Namul</FIRSTNAME>
<COMPANY><![CDATA[<<The Bean Factory>>]]></COMPANY>
<EMAIL>xml beanfactory com</EMAIL>
<PHONE>&PHONENUMBER;</PHONE>
</PERSON>
Thanks,
Jasmit Singh