The art of simplicity is a puzzle of complexity.
YAML is a data serialization format designed for human readability and interaction with scripting languages.
SnakeYAML Engine is a YAML 1.2 processor for the Java Virtual Machine version 8 and higher.
- The Engine will parse/emit basic Java structures (String, List<Integer>, Map<String, Boolean>). JavaBeans or any other custom instances are explicitly out of scope.
- Since the custom instances are not supported, parsing any YAML document is safe - the YAML input stream is not able to instruct the Engine to call arbitrary Java constructors (unless it is explicitly enabled)
- The API is stable but might change. Feel free to review the code and propose features/changes.
SnakeYAML Engine features
- a complete YAML 1.2 processor. In particular, SnakeYAML can parse all examples from the specification.
- Integrated tests from YAML Test Suite - Comprehensive Test Suite for YAML
- Unicode support including UTF-8/UTF-16/UTF-32 input/output.
- Low-level API for serializing and deserializing native Java objects.
- Only JSON Schema is supported.
- The Core Schema might be supported later.
- Relatively sensible error messages (can be switched off to improve performance).