Difference between revisions of "OpenEMR API"

From OpenEMR Project Wiki
 
(26 intermediate revisions by the same user not shown)
Line 1: Line 1:
:This is a project that was recently started to auto-document OpenEMR codebase.
== Overview ==
:This is a project that started in June, 2012, to auto-document the OpenEMR codebase. The project is still in an early phase.


*Most recent run can be found here: http://www.open-emr.org/apidocs/
== OpenEMR API Documentation Links ==
:*(Was completed with phpDocumentor using following command on ubuntu: ''sudo phpdoc -t apidocs -o HTML:default:default -d . --ignore apidocs/,gacl/,phpmyadmin/,library/adodb/'')
*[http://www.open-emr.org/apidocs/412/ OpenEMR 4.1.2]
*[http://www.open-emr.org/apidocs/dev/ OpenEMR Developer Version]


*Sourceforge forum on this topic can be found here: http://sourceforge.net/projects/openemr/forums/forum/202506/topic/5355691
== 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#Examples_for_OpenEMR|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#Examples_for_OpenEMR|How to Document Your Code Properly]] wiki page.
::3. Organize codebase API by optimizing the #package, #sub-package and #category params.
*Sourceforge forum on this topic can be found here: http://sourceforge.net/p/openemr/discussion/202506/thread/d97d1489
*A related github repo can be found here: http://github.com/kevmccor/code-doc-oemr
*A related github repo can be found here: http://github.com/kevmccor/code-doc-oemr


*Directories to ignore:
== Issues ==
*Directories/Files to ignore:
:*apidocs/
:*apidocs/
::* Reason - This is the API docs directory
::* Reason - This is the API docs directory
Line 19: Line 32:
:*interface/main/calendar/pnadodb/
:*interface/main/calendar/pnadodb/
::* Reason - This is an embedded module and connector functions can be found at library/sql.inc
::* 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.

Latest revision as of 23:56, 14 July 2013

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.