The AFP architecture consists of a number of sub-architectures:
MO:DCA-P (Mixed Object:Document Content Architecture-Presentation):
MO:DCA-P is occasionally called AFPDS (AFP Data Stream), which is a PDL (Page Description Language) file format that describes the text and graphics on a page. The 'Mixed Object' moniker refers to the fact that a MO:DCA file can contain multiple types of objects, including text, images, vector graphics, page separators, patch code, and barcodes. An application can simply include a string of digits along with controls that identify a specific type of barcode, and the rendering of bars will be performed on the output platform via either physical printer hardware or software emulation. A MO:DCA document consists of a sequential, ordered hierarchy of independent objects - documents, pages, data objects, and such resource objects as fonts and ICC profiles. Each object is delimited by one or more begin/end structures, and objects to be rendered specify presentation parameters and resource requirements in structures called "environment groups". Since the pages in MO:DCA documents are organized in sequential order, presentation can start as soon as the first page is received. The MO:DCA format is comparable to other PDLs such as Adobe PDF that specify distinct pages.
IPDS (Intelligent Printer Data Stream)
Known as a bi-directional protocol used between the host and the printer, IPDS is used to send the page-level data to the printer and to signal errors and accounting information back to the host server. The IPDS protocol, comparable to protocols like IPP (Internet Printing Protocol), allows the server to query a printer's available resources such as available memory, fonts, input trays, etc.
BCOCA (Bar Code Object Content Architecture)
BCOCA is used to describe and generate barcodes such as PDF417.
CMOCA (Color Management Object Content Architecture)
CMOCA defines resources that carry color management information, such as ICC profiles, tone transfer curves, and halftones.
AFP GOCA (Graphics Object Content Architecture for AFP)
AFP GOCA is used to define and generate vector graphics.
IOCA (Image Object Content Architecture)
IOCA is used to define and generate raster images.
PTOCA (Presentation Text Object Content Architecture)
PTOCA is used to define and generate text.
AFP also supports other industry-standard data formats using the concept of AFP object containers; examples are TIFF, GIF, JPEG (JFIF), EPS, and PDF. These objects can be mixed as peer objects on an AFP page with native AFP objects such as BCOCA, AFP GOCA, IOCA, and PTOCA objects.