hey guys. i'm trying to retrieve some xml content over http to begin one of my pipelines:
/nlm/query?author=Smith <map:match pattern="nlm/query"> <map:match type="request" pattern="author"> <map:generate src="http://www.ncbi.nlm.nih.gov/entrez/utils/pmqty.fcgi?db=PubMed&mode=XML&dispmax=999&term={1}[au]"/> <map:serialize type="xml"/> </map:match> </map:match> the xml returned from the nih server will begin like so: <?xml version="1.0"?> <!DOCTYPE QueryResult PUBLIC "-//NLM//DTD QueryResult, 22 Jan 2002//EN" "/entrez/query/DTD/pmqty_020122.dtd" > <QueryResult> unfortunately, cocoon tosses an exception when trying to parse this document. it claims that it cannot access the dtd. however, it does not appear that it's actually trying to get the DTD from the proper url: http://www.ncbi.nlm.nih.gov/entrez/query/DTD/pmqty_020122.dtd since the dtd is actually accessible at that url. it seems like the url context information for the source xml is lost, which doesn't seem right. anyone know what's up with that? is there another generator i should be using? as a workaround, i tried to figure out how to disable validation to ignore the issue completely. well, it seems that in c2.0.0, you cannot configure the parser's validation behavior in the cocoon.xconf file. i looked in the source for JaxpParser, and was surprised to note the parser factory's are configured to create non-validating parsers: public JaxpParser () throws SAXException, ParserConfigurationException { this.factory.setNamespaceAware(true); this.factory.setValidating(false); this.docfactory.setNamespaceAware(true); this.docfactory.setValidating(false); } if this is right, why is the parser trying to validate? - donald --------------------------------------------------------------------- Please check that your question has not already been answered in the FAQ before posting. <http://xml.apache.org/cocoon/faqs.html> To unsubscribe, e-mail: <[EMAIL PROTECTED]> For additional commands, e-mail: <[EMAIL PROTECTED]>