EOReporter is a command-line tool generate files (documentation, usually) based on information in an EOModel. Files can be generated on a per-entity, per-model, or per-model group basis. Some provided templates generate HTML documentation similar to the EOModeler list view. EOReporter is a direct descendant of the EOGenerator application.

It is possible (among other things) to generate PB.project and Makefiles (pre-OS X) that are always up-to-date with the entities in your models. It can also be used to generate HTML documentation similar to what is listed in EOModeler, create a script that can be used to removed obsolete entities from CVS, or turn an EOModel into an XML file.

EOReporter can be compiled and used on MacOS X 10.x, MacOS X Server 1.2, WebObjects/NT, and OPENSTEP. It comes with source code. EOF or WebObjects is also required.


Here are some examples that use the Movies and Rental models that come with WebObjects. They show how you can create online documentation that closely matches what is available in EOModeler. Click here for entity as the smallest document, here for model, and here for a model group. Templates for these examples come with EOReporter.


EOReporter is freeware. Please see our About page for more information.


We are always interested in bug reports, suggestions, comments, or any other feedback on EOReporter. Template donation would be greatly appreciated also. Send feedback to here.


1.3, March 2006

  • Built as universal binary for use on Intel Macs.
  • Added barebones EOF headers to allow compilation with WebObjects 5.3. Contributed by Mike Schrag.
  • Updated with new MiscMerge; adds encoding support and fixes a few bugs.

1.2.1, May 2005 (MacOS X-only release)

  • Updated for WebObjects 5.2.4 release on MacOS X.
  • Reset the NEXT_ROOT environment variable to blank so it does not cause problems with EOAdaptor frameworks loaded dynamically. Reported by Pierre Frisch for eogenerator.

1.2, November 2004

  • Updated to a new MiscMerge version; new features include a debug command, and additional commands to set variables in different scopes.
  • Fixed some templates that could cause infinite loops.

1.1, December 2002

  • Updated to a new MiscMerge version; new features include break/continue and mathematical expressions.
  • Added code for fetch specifications documentation.
  • Complete rewrite of the example documentation templates to utilize CSS more extensively and have a completely new look that is more pleasing and complete in what it documents.
  • Added -classlist option to list entities by their class name.

1.0, August 2001

  • Initial release.