BeerXML is used in both amateur18 and professional19 brewing and facilitates the sharing of brewing data over the internet.20 Users of different applications such as the open-source software21 Brewtarget (with more than 52,000 downloads 22 ) can share data via XML with users of popular proprietary software such as Beersmith and ORRTIZ: BMS 4 Breweries or upload their data to share on BeerXML compatible sharing sites and cloud platforms such as Brewtoad (over 50,000 registered users23 ) or the Beersmith Recipe Cloud (with 43,000 registered users). A user of a recipe design and sharing and creation site such as Brewersfriend.com can import and export24 BeerXML to and from mobile apps or enter it into a brewing competition database25 such as The Brew Competition Online Entry & Management (BCOE&M) system.
The adoption of BeerXML as a standard is leading to new developments such as ingredients databases26 which attempt to standardise ingredients definitions and characteristics. Brewers can use platforms like Brewblogger.com to create recipes and log their brewday for publication as a blog and for export to databases2728 and common spreadsheet applications.29
JavaScript applications such as brauhaus.js (developed from the Malt.io recipe sharing site30 ) allow users to run them on a local machine or web browser for execution through any standards compliant web browser.
The following fields form the core information of the BeerXML structure
Recipe Specific - When added (Boil, Mash, First Wort, Dry, etc.)
Recipe Specific
Recipe Specific - When added (Boil, Primary, etc.)
Yeasts
BeerXML 1.0 supports no more than three fermentation steps.31 While this is not a real world limitation for many brewers, it does introduce a discrepancy where a software tool or web service that allows several or unlimited fermentation steps wishes to implement BeerXML as an import/export mechanism. For example; where a fermentation schedule instruction to pitch at 21 degrees Celsius, allow to drop to 17 over three days and then decrease by 1 degree per day until the wort reaches 10 degrees, hold for 12 days before racking for maturation. This could not be accommodated within the formal structure requiring the use of informal/optional and non machine readable fields.
All units are converted to SI units internally. As a result, there is loss of precision when converting non SI units whether they be Imperial, US Customary or metric.
Hop oil contributions in the copper are not explicitly supported in the current definition.
Farsene levels are not explicitly supported in the current definition.
No distinction is made between weight and mass32
The BeerXML standard has a proposed second version which has been mooted and is under development. It has not been validated or published as its feature set is still under discussion.33
As in XML, all files begin with a header line as the first line. After the XML header a record set should start (for example<RECIPES>…</RECIPES> or <HOPS> … </HOPS>).
Required XML Header Example with Recipes tag:
Tag names are always uppercase. For example, "HOP" is acceptable, but "hop" and "Hop" are not.
All records have a required <VERSION> tag that denotes the version of the XML standard. At present, all are set to the integer 1 for this version of the standard. It is intended that future versions of the standard will be backward compatible with older versions, but the VERSION tag allows newer programmes to check for a higher version of the standard or do conversions if required to be backward compatible.
All units are fixed. It is the responsibility of the importing or exporting programme to convert to and from the units below if needed.
As per the XML standard, all non-standard tags should be ignored by the importing program. This allows an implementation to store additional information if desired by using their own tags. Any tags not defined as part of this standard may safely be ignored by the importing program.
The optional 'Appendix A' adds tags for use in the display of brewing data using XML style sheets or XML compatible report generators. As the tags in the appendix are for display only and may include rounded values and varying units. These appendix tags are intended for display and not for data import.
"BeerXML An XML Standard for Beer Brewing Data Version 1.0". BeerXML.com. BeerXML group. Retrieved 14 February 2014. http://www.beerxml.com/beerxml.htm ↩
Johnston, Casey (10 October 2013). "A computerized beer machine takes the legwork out of home-brewing". CNN.com. CNN/Turner. Retrieved 15 February 2014. http://edition.cnn.com/2013/10/10/tech/innovation/beer-machine-kickstarter-arduino/ ↩
Revell, Matthew. "Beer as in beer". launchpad.net. Launchpad. Retrieved 19 February 2014. http://blog.launchpad.net/projects/beer-as-in-beer ↩
"Mise à jour : JolieBulle 2.9 - Importation d'une liste d'ingrédients. Il est maintenant possible d'importer une liste d'ingrédients au format BeerXML" (in French). Tuxfamily.org. Retrieved 15 February 2014. http://joliebulle.tuxfamily.org/mise-a-jour-joliebulle-29.html ↩
"BeerXML apps on Google Play". Retrieved 11 February 2014. https://play.google.com/store/search?q=beerxml&c=apps&hl=en ↩
"Pocket Brewer Windows Phone BeerXML". The Pocket Brewer. Retrieved 14 February 2014. http://www.pocketbrewer.com/how-to-use-recipe-import-export-features/ ↩
Parker, David. "A recipe formulation App for iOS". DJP Software. Retrieved 15 February 2014. http://www.djpsoftware.com/brewpal/ ↩
Griffith, William. "HomeBrew Assistant". homebrewassistant.com. iTunes Store. Retrieved 15 February 2014. http://www.homebrewassistant.com/ ↩
Palmer, Brian. "BeerXML At RubyGems". Ruby Gems. Retrieved 15 February 2014. https://rubygems.org/gems/beerxml ↩
Springer, Derek. "BeerXML Shortcode For WordPress". WordPress.org. WordPress. Retrieved 15 February 2014. http://wordpress.org/plugins/beerxml-shortcode/ ↩
Hotelling, George. "A PHP BeerXML parser and generator". GitHub. Retrieved 15 February 2014. https://github.com/georgeh/php-beerxml ↩
Taylor, Daniel G. "A BeerXML import and export plugin for Brauhaus.js". GitHub. Retrieved 15 February 2014. https://github.com/homebrewing/brauhaus-beerxml ↩
Ingraham, Nathan (2 October 2013). "The PicoBrew Zymatic is the Nespresso of beer brewing". Vox Media. The Verge. Retrieved 15 February 2014. https://www.theverge.com/2013/10/2/4795602/picobrew-zymatic-is-the-nespresso-of-beer-brewing ↩
Tyson, Mark (October 2013). "Ex-Microsoft execs launch beer making device on Kickstarter". Hexus. HEXUS.net is the UK’s number one independent technology news and reviews website. Retrieved 15 February 2014. http://hexus.net/ce/news/gadgets/60737-ex-microsoft-execs-launch-beer-making-device-kickstarter/ ↩
Casey, Johnston (October 2013). "A computerized beer machine takes the legwork out of home-brewing". arstechnica.com. arstechnica.com/gadgets/2013/10/a-computerized-beer-machine-takes-the-legwork-out-of-home-brewing/. Retrieved 14 February 2014. https://arstechnica.com/gadgets/2013/10/a-computerized-beer-machine-takes-the-legwork-out-of-home-brewing/ ↩
"BeerXML2BrewTroller beta - Download BeerXML onto your BrewTroller". SourceForge.net. 30 May 2013. Retrieved 15 February 2014. http://sourceforge.net/projects/beerxml2bt/ ↩
Wolf, Michael. "Here's The Little Box That Could Change The Beer World Forever". medium.com. Retrieved 15 February 2014. https://medium.com/on-startups/888fe67a57b7 ↩
"Brew Competition BeerXML advice page". Retrieved 11 February 2014. http://help.brewcompetition.com/files/beerxml_import.html ↩
"3BBL Micro Brewery". Bru-Gear.com. BruGear LLC. Archived from the original on 22 February 2014. Retrieved 15 February 2014. https://web.archive.org/web/20140222180227/http://www.bru-gear.com/store/p3/3BBL_Micro_Brewery.html ↩
"Brew Monkey BeerXML page". brew-monkey.com. http://www.brew-monkey.com/recipes/whatisbeerxml.php ↩
"Brewtarget". gitorious.org. Gitorious. Archived from the original on 21 February 2014. Retrieved 15 February 2014. https://web.archive.org/web/20140221175816/https://gitorious.org/brewtarget ↩
"Linux.com article on Brewtarget". Linux.com. Retrieved 14 February 2014. http://www.linux.com/learn/tutorials/553639-brewtarget-hop-into-beer-brewing-with-open-source ↩
"Brewtoad User Stats". Brewtoad.com. Archived from the original on 2014-02-09. Retrieved 2014-02-14. https://web.archive.org/web/20140209055449/http://brewtoad.com/users ↩
"Brewer's Friend FAQ". Brewersfriend.com. http://www.brewersfriend.com/faq/#platform5 ↩
"BrewCompetition.com BeerXML guidelines". The Brew Competition Online Entry & Management (BCOE&M) system. http://help.brewcompetition.com/files/beerxml_import.html ↩
"The Beer Database Project". BeerDB.org. http://beerdb.org/ ↩
"Brewthology database system". The Twin Hills Brewery. Archived from the original on 22 February 2014. Retrieved 14 February 2014. https://web.archive.org/web/20140222060422/http://twinhillsbrewery.com/brewthology/ ↩
Peretto, Bryan (6 January 2014). "PHP based BeerXML brewing recipe database". SourceForge. Retrieved 15 February 2014. http://sourceforge.net/projects/brewthology/ ↩
"Brewblogger feature set". Brew Blogger Platform. http://www.brewblogger.net/index.php?page=features ↩
Taylor, Daniel G. "New release of brauhaus.js". Malt.io. Archived from the original on 22 February 2014. Retrieved 15 February 2014. https://web.archive.org/web/20140222232424/http://blog.malt.io/2013/05/brauhausjs-mashing.html ↩
"Did you know you can import and export recipes via BeerXML?". ibrewmaster.com. iBrewmaster. Archived from the original on 21 February 2014. Retrieved 15 February 2014. https://web.archive.org/web/20140221185154/http://feedback.ibrewmaster.com/knowledgebase/articles/44652-did-you-know-you-can-import-and-export-recipes-via ↩
"Supported Units - Brewtarget 2.02 User Manual". Brewtarget. Retrieved 15 February 2014. http://www.brewtarget.org/manual.html#supportunits ↩
"BeerXML 2 Schema Proposal". BeerXML Development Forum. BeerXML.com. Retrieved 14 February 2014. http://beerxml.com/forum/index.php?topic=10.0 ↩