(* This file is part of an ocaml binding of an XSLT engine working on Gdome * documents. * * The code is largely based on the code of T.J. Mather's XML::GDOME::XSLT * Perl module (http://kobesearch.cpan.org/search?dist=XML-GDOME-XSLT) * * Copyright (C) 2002 Claudio Sacerdoti Coen * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * For more information, please send an email to *) let domImpl = Gdome.domImplementation () in let input = domImpl#createDocumentFromURI ~uri:"../../test_files/input.xml" () and style = domImpl#createDocumentFromURI ~uri:"../../test_files/stylesheet.xsl" () in (* First of all, let's try the exception handling machinery *) let _ = try ignore (Gdome_xslt.processStylesheet input) ; assert false (* previous line should rise an exception *) with Gdome_xslt_init.ProcessStylesheetException -> () in let pstyle = Gdome_xslt.processStylesheet style in let output = Gdome_xslt.applyStylesheet input pstyle ["parameter1","'value1'" ; "parameter2","'value2'" ; "parameter3","'value3'" ] in let res = domImpl#saveDocumentToFile ~doc:output ~name:"../../test_files/output.xml" () in if not res then prerr_endline "Error saving to document ../../test_files/output.xml" else begin print_endline "The test was successful iff ../../test_files/output.xml.correct is" ; print_endline "equal to ../../test_files/output.xml" end ;;