-- This is written in Haskell. {-- HBase -- general-purpose libraries for Haskell Copyright (C) 2002 Ashley Yakeley 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 --} module Main where { import Org.Org.Semantic.HBase.Encoding.XML; import Org.Org.Semantic.HBase; instance Show XMLAttribute where { show (MkXMLAttribute t n v) = (show n) ++ "=\"" ++ v ++ "\""; }; instance Show XMLEvent where { show (ExceptionEvent ex) = "exception: " ++ (show ex); show (StartElementEvent n attrs) = "<" ++ (show n) ++ " " ++ (show attrs) ++ ">"; show (EndElementEvent n) = ""; show (CharactersEvent s) = show s; show (IgnorableWhitespaceEvent s) = "iws:" ++ (show s); show (ProcessingInstructionEvent t c) = ""; show (StartPrefixMappingEvent pf uri) = "map " ++ pf ++ " to " ++ uri; show (EndPrefixMappingEvent pf) = "/map " ++ pf; show _ = "other"; }; main :: IO (); main = mainRunProgram (doWithArgFiles (\peeksource -> do { exToFail (xmlDocumentEvents (exToFail (parseUTF8 (psSource peeksource))) (\evt -> putStrLn (show evt))); return (); })); }