Book contents
- Frontmatter
- Contents
- Acknowledgements
- Preface
- Conventions
- Welcome to the EMBOSS Developer’s Guide
- 1 Getting started
- 2 Your first EMBOSS application
- 3 Software development under EMBOSS
- 4 ACD file development
- 5 C programming
- 6 Programming with AJAX
- 7 Quality assurance
- 8 Application documentation standards
- 9 A complete application: seqret
- 10 Incorporating third-party applications
- Appendix A ACD syntax reference
- Appendix B C programming libraries
- Appendix C C coding standards
- Appendix D Code documentation standards
- Appendix E Resources
- Index
4 - ACD file development
Published online by Cambridge University Press: 05 December 2011
- Frontmatter
- Contents
- Acknowledgements
- Preface
- Conventions
- Welcome to the EMBOSS Developer’s Guide
- 1 Getting started
- 2 Your first EMBOSS application
- 3 Software development under EMBOSS
- 4 ACD file development
- 5 C programming
- 6 Programming with AJAX
- 7 Quality assurance
- 8 Application documentation standards
- 9 A complete application: seqret
- 10 Incorporating third-party applications
- Appendix A ACD syntax reference
- Appendix B C programming libraries
- Appendix C C coding standards
- Appendix D Code documentation standards
- Appendix E Resources
- Index
Summary
Introduction to ACD files
Every EMBOSS and EMBASSY program has an ACD (AJAX command definition) file which describes the application, its options (parameters) and command line interface. The ACD file controls the behaviour of the application at the command line, particularly, all the user input operations. It includes:
An application definition describing the application itself, for instance its name, documentation text and functional grouping.
Attributes defining exactly what options are permitted or required under different conditions, how option values may be specified on the command line and how the user is prompted for values.
A data definition for every application option. These describe the program parameters, i.e. the data the program can accept or requires to run. This includes input and output files and all other parameters.
A datatype for each application option and attributes describing the permissible type or value in detail, for example default values and whether data has to be within limits. These are used for user input validation to ensure the application parameters are set correctly.
Dependencies between application options, such as when a value is only required if another is specified, or the permitted type of value depends on the value or the presence of another. If for example the input sequence for an alignment program is DNA it should not accept a protein comparison matrix.
When an application is run, the ACD file is read and the command line processed automatically by an ACD file parser and command line processor that is internal to EMBOSS. Together these ensure that the required information is available at startup. All of the required option values are prompted for as necessary before the application starts. Input values that are incorrect or out of range are reprompted for automatically. The input values are read and held in memory, files are opened as required and so forth, so that all the required data are available when the application proper runs. An EMBOSS application cannot ask the user for more information after several hours of processing!
- Type
- Chapter
- Information
- EMBOSS Developer's GuideBioinformatics Programming, pp. 81 - 144Publisher: Cambridge University PressPrint publication year: 2011