OpenEMR API

From OpenEMR Project Wiki

Overview

This is a project that started in June, 2012, to auto-document the OpenEMR codebase. The project is still in an early phase.

OpenEMR API Documentation Links

Build

  • (Was completed with phpDocumentor using following command on ubuntu: sudo phpdoc -t apidocs -o HTML:frames:earthli -d . --ignore apidocs/,gacl/,phpmyadmin/,library/adodb/,interface/main/calendar/pnadodb/ --defaultpackagename OpenEMR --title "OpenEMR API Documentation" --sourcecode)
  • Next run:
  • Try to fix following parameter: --sourcecode (considered an unstable option and doesn't appear to be working) to get it to link to the source code (or figure out another mechanism)
  • Will also try other documentation software.

Plan

  • Success of this project is driven by proper documentation of the OpenEMR codebase. There are three phases:
1. All new code requires proper documenting as outlined on the How to Document Your Code Properly wiki page.
2. Convert old code to new documentation standards as outlined on the How to Document Your Code Properly wiki page.
3. Organize codebase API by optimizing the #package, #sub-package and #category params.

Issues

  • Directories/Files to ignore:
  • apidocs/
  • Reason - This is the API docs directory
  • gacl/
  • Reason - This is an embedded module with an API already included. Additionally, connector functions can be found at library/acl.inc .
  • phpmyadmin/
  • Reason - This is an embedded application that does not communicate directly with OpenEMR.
  • library/adodb/
  • Reason - This is an embedded module and connector functions can be found at library/sql.inc
  • interface/main/calendar/pnadodb/
  • Reason - This is an embedded module and connector functions can be found at library/sql.inc
  • Note that duplicate function names are not listed. Thus will need to ensure unique functions names in functions that are meant to be used in other scripts.