Publishing Engine Programmer's Guide > PTC Arbortext Publishing > Introduction > Publishing Operation Components
  
Publishing Operation Components
Each publishing operation is made up of a number of smaller operations performed in sequence. Most of the complex processing is handled by two components called content pipelines and content compilers. Most publishing operations involve setting up the operation, running a content pipeline, and then running a content compiler on the pipeline output.
content pipeline
a mechanism that transforms an XML or SGML document into another XML or SGML document. The result is retained in memory or written to disk. Some of the operations that a content pipeline performs include:
profiling (removing portions of the input document being published)
transforming the document as specified by an XSL stylesheet
When using Arbortext PE server to fulfill publishing requests, the content pipeline always runs on the server. Refer to Content Pipelines for a more detailed description.
filter
a component of a content pipeline. Filters are written in Java, and developers can write their own custom filters. Developers can create a new content pipeline by combining existing and custom filters in new patterns.
Information about filters is included in Content Pipelines.
content compiler
a mechanism that transforms an XML or SGML document into some other format (not XML or SGML). Some content compilers are integrated with Arbortext Editor and can read their input documents from memory. Others are separate programs and read their input documents from disk files. All content compilers place their output in disk files.
A content compiler is a large, monolithic, and complex program. Although it is less likely that developers want to create their own content compilers, they are more likely to use commercial third-party software as content compilers. For example; Arbortext Publishing Engine uses the third party compilers in HTML Help Workshop.
Refer to Content Compilers for a more detailed description.
publishing framework
a software procedure that combines a content pipeline and one or more content compilers to form a complete publishing operation. The publishing framework, also sometimes known as the composition framework, is implemented in ACL. It's accessible to the Arbortext Editor user interface or to ACL subroutine calls. The framework collects publishing parameters, initializes, runs a content pipeline, runs one or more content compilers, and detects and reports errors. The publishing framework also can request services from the Arbortext Publishing Engine if required.
Refer to The Publishing Framework for a more detailed description.
PE Client Composer
a layer of software that handles the Arbortext Editor client side operation that is performed when using Arbortext Publishing Engine publishing.
Every publishing operation starts on the client, either from a graphical user interface or from ACL code. When Arbortext Editor uses the Arbortext PE server, the publishing framework calls the PE Client Composer. Usually the framework calls the Client Composer just at the point where the framework is ready to run the content pipeline. The Client Composer gathers the data, transmits it to the Arbortext PE server, and waits for the server’s response. When the Arbortext PE server returns a response, the Client Composer extracts the returned data and places it in a predetermined location. Then the Client Composer returns control to the publishing framework, which may determine if any other processing is needed.
Refer to Arbortext Publishing Engine Client Composer for a more detailed description.
PE Server Composer
an Arbortext PE Application that handles the server side operation for fulfilling the request from the PE Client Composer. It receives data transmitted by the Client Composer, runs the appropriate content pipeline and/or content compiler, and then returns the result to the Client Composer.
Refer to Arbortext Publishing Engine Server Composer for a more detailed description.
Publishing Parameter Array
is an ACL associative array of name and value parameters used by almost all stages of the publishing process. The array is initialized by the publishing framework. As processing continues, various components of the publishing process retrieve values from the array, and then they store new values in the array to control publishing behavior downstream. The parameter array is passed to the content pipeline and controls every aspect of pipeline execution. If Arbortext PE server is used for publishing, the parameter array is passed by the PE Client Composer to the PE Server Composer.
Parameters are explained in the context where they are used.
Some content compilers always run on the server, while others run on the client machine. Some publishing operations can only be performed on the client, while others require Arbortext PE server. Some operations run in a mixed mode; for example, a content pipeline followed by a content compiler that run on the server, and then another content compiler that runs on the client to finish the publishing operation. Some operations may be performed locally or with server assistance, depending upon the products and licenses you have.