What is the BML file format?
A .bml file contains Bean Markup Language source, an XML-based scripting language for declaratively wiring together JavaBeans components. BML was developed by IBM alphaWorks and announced at the XML '98 Conference in November 1998.
A .bml document uses a <bml> root element to describe a graph of nested and interconnected JavaBeans: each bean is specified by its Java class name, and properties are set or cross-wired declaratively in the markup. The BML toolset comprised two components - an interpreter (called the "player") that executed the bean graph at runtime, and a compiler that generated reflection-free Java source code from the .bml description.
IBM alphaWorks discontinued BML in the early 2000s; it was never widely adopted outside research and prototyping. The Spring Framework's XML bean-definition files (applicationContext.xml) addressed the same problem and became the mainstream successor, later replaced by Spring annotations and Java configuration classes.
The .bml extension is also shared by two unrelated formats: a GNU Log binary markup format and Bridge Markup Language files used in contract bridge bidding systems.
Security & safety
RISK: LOWBML files are plain-text XML; they cannot execute without a BML interpreter/runtime. No known malware vector.
Format details
in a nutshell- GNU Log BML (Binary Markup Language) - A binary data-serialization format designed for lightweight encoding in files and network sockets; unrelated to IBM Bean ML.
- Bridge Markup Language - Plain-text format for describing bridge bidding systems and conventions; used by open-source BML tool on GitHub.
Programs that open BML files
Technical details
deep spec| Format type | XML-based declarative language for wiring JavaBeans components |
| Encoding | UTF-8 or ISO-8859-1 (declared in XML prolog) |
| Root element | <bml> XML document element containing nested bean definitions |
| Typical size | 1 KB - 100 KB (configuration scripts) |
| Platform | Any JVM platform (Windows, Linux, macOS) |
| Runtime components | BML interpreter ("player") for runtime execution; BML compiler for generating reflection-free Java code |
| Specification status | BML 1.0 - single release (1998); IBM alphaWorks discontinued the project in the early 2000s |
| Successor technology | Spring Framework XML bean definitions (applicationContext.xml), later Spring annotations and Java config classes |
| Magic bytes | None fixed; typically begins with <?xml version="1.0"?> or <bml> root element |
| MIME type | application/xml |
| Extension conflict | .bml also used by GNU Log Binary Markup Language and Bridge Markup Language (unrelated formats) |
| Released | November 1998 (XML '98 Conference, IBM alphaWorks) |
| Latest version | BML 1.0 (no subsequent versions; project discontinued) |
| Specification | xml.coverpages.org |
BML conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about BML files.