To try this standalone: - Run the program java -cp yaml.jar;jakarta-oro-2.0.6.jar org.grjyaml.YAML - Supply YAML documents on the input, and it will load them and echo them back --- - a - b ... --- [a, b] ... - Ctrl-C to exit. To use this in your code: - Import the YAML package import org.grjyaml.*; - Create an instance of the processor (NB it is not thread-safe) YAML yaml = new YAML(); - Either supply a reader containing a stream of separated documents to the parse method. If the stream is empty, it will return null. Otherwise it will normally return a Map or List. Map map = (Map) yaml.load(reader); List list = (List) yaml.load(reader); Or supply a string containing an individual document. Map map = (Map) yaml.load(string); To customise loading: - Subclass YAMLParser or ExplicitParser to create your parser. Implement the load method. - Subclass YAML to register your parser. Extend the init() method. protected void init() { parsers.add(new MyParser(this)); super.init(); } Acknowledgements: > This product includes software developed by the Apache Software Foundation (http://www.apache.org/).