On 04/12/2018 12:07 AM, Jonetta Taylor wrote:

I’m trying to use the docx to docbook conversion tool, and receive the
following error:

[... IgniteAddressFlowMacrosUserGuide.docx to XHTML: zip file is empty]

The docx file is attached.

I cannot reproduce the problem using the DOCX file you sent us.

Using this form: http://www.xmlmind.com/w2x/docx_to_docbook.html , it worked fine[*] for me. See attached DocBook result.

- May be it was a temporary glitch? (unlikely; nothing happened to our server these last few days)

- May be you have a corporate firewall or proxy which gets in the way? If this the case, you'll get the very same error message for all the DOCX files you'll try to convert.

I would suggest to try again, preferably from your home computer.

[*] What you get is just an “out-of-box result”.

It's not difficult to improve the quality of the result by customizing the conversion process as explained in Customizing the output of w2x. The easiest way to do this is to download the product, install it and run w2x-app. Desktop application w2x-app has a setup assistant (AKA “wizard” style dialog box) making it quick and easy to create w2x option files. You'll like this This setup assistant has a screen which may be used to map MS-Word character and paragraph styles (e.g. p-CodeSample) to XML elements possibly having attributes (e.g. DITA pre outputclass="code-sample").

You may download XMLmind Word To XML Evaluation Edition from this page:


The desktop app called w2x-app is very easy to use. See http://www.xmlmind.com/w2x/_distrib/doc/manual/index.html#w2x_app_alternative
<?xml version="1.0" encoding="UTF-8"?><article xmlns="http://docbook.org/ns/docbook"; version="5.0" xml:lang="en-US"><info><title>copyright_quadient</title><author><personname>MadCap Software</personname></author><date remap="dcterms.created">2018-04-11T22:06:00Z</date><date remap="dcterms.modified">2018-04-11T22:06:00Z</date><publishername>MadCap Software</publishername></info><section><title>Overview</title><para>The AddressFlow system provides a data processing framework consisting of a management portal, a processing application, and a web API. The management portal allows users to configure the system, configure automated product installations, and review job processing history.</para><para>This overview details the overall application usage, methods to process jobs, and an overview of how to communicate with the system using the web API. </para></section><section><title>Application Usage</title><para>The AddressFlow Manager provides the access point to configure the system. When you start the application, you are provided a view of the dashboard as well as provided pages to configure the system and test job designs. The dashboard displays current system activity and shows details about what service providers and products are installed on the various servers attached to the system. </para><section><title>System Management</title><para>After you install AddressFlow, a shortcut is added to the Start Menu. Users click the shortcut to start the AddressFlow Manager dashboard and management interface. You can also accomplish this by opening the application with no parameters at the command prompt:</para><para>AddressFlow.exe </para><section><title>Application Parameters</title><para>The following is a list of the available application parameters:</para><itemizedlist><listitem><para>Addressflow.exe [job_file_path] [override parameter "Name=Value"]</para></listitem><listitem><para>Addressflow.exe cleanup [jobID] </para></listitem><listitem><para>Addressflow.exe tester</para></listitem><listitem><para>Addressflow.exe install products</para></listitem><listitem><para>Addressflow.exe install service</para></listitem><listitem><para>Addressflow.exe start service</para></listitem><listitem><para>Addressflow.exe stop service</para></listitem><listitem><para>Addressflow.exe uninstall service</para></listitem></itemizedlist></section><section><title>Job Definitions</title><para>The Job Definition can be viewed in the Test Client user interface by including the parameter tester in the call to AddressFlow.</para><para>For example, the following call will display the AddressFlow Test Client [job editor]:</para><para>AddressFlow.exe tester </para><para>In the next example, the call displays the specified job in the editor:</para><para>AddressFlow.exe tester "C:\data\jobDef.job"</para></section></section></section><section><title>Application Framework</title><para>The AddressFlow application runs jobs for many types of data services by processing the data using job templates that define what service to run and the settings to control that service, as well as defining the required input data format and desired output data format.</para><section><title>Running Jobs</title><para>Jobs can be defined as either XML or JSON and can be started by: </para><itemizedlist><listitem><para>Running a command-line application</para></listitem><listitem><para>Calling a web service</para></listitem><listitem><para>Using the .NET Framework API</para></listitem><listitem><para>Placing a file in a hot folder</para></listitem></itemizedlist><section><title>Command-line</title><para>You can run a job using the command-line call or within a batch file. The following illustration describes a simple example of running a job that is detailed in a job definition file named addressProcess.job.</para><para>C:\&gt;AddressFlow "C:\Jobs\addressProcess.job"</para><para>Settings in the job can be added or overridden by supplying additional command-line parameters. The following example shows how this can be extended by supplying additional job parameters. The parameter name=value format is used.</para><para>C:\&gt;AddressFlow "C:\Jobs\addressProcess.job" "PadID=CLNT01"</para></section><section><title>Additional Command-line Parameters</title><para>update=new </para><para>Creates a new job file in the same directory as the job template, containing the resulting status information.</para><para>update=self</para><para>Updates the current job file with the resulting status information.</para><para>update=[directory]</para><para>Creates a new job file in the specified directory, containing the resulting status information.</para><para>update=[filePath]</para><para>Creates a new job file using the specified file path and name, containing the resulting status information.</para><para>delete</para><para>Deletes the job template that was used to start the job.</para></section></section><section><title>Hot Folder</title><para>Jobs can be automatically activated by placing a data file or job definition file into the AddressFlow Queue folder. Placing a job definition file into the configured hot folder allows the system to run jobs dynamically. The job definition file contains all of the information used to locate the input data, link the data fields into the Service Providers data scheme, and set any service settings used to configure the job. </para></section><section><title>API Methods</title><para>The public facing API within the AddressFlow.exe assembly provides access to all of the services and tasks that have been loaded into the AddressFlow System. This API allows developers to run data service jobs by accessing the static Job Activation methods and allows the dynamic creation and execution of a given job. The AddressFlow.Run(JobDefinition) or Job.Run() methods provides a simple yet powerful way to run an AddressFlow job within the context of a hosted process.</para></section><section><title>Web API </title><para>AddressFlow provides a web service interface that allows integrators and developers to access all of the services and tasks that have been loaded into the AddressFlow System. This web API allows developers to run jobs or query the AddressFlow system for Job status information. The web API uses a default API key security mechanism that helps secure the use of the AddressFlow Web API. API keys can be maintained in the AddressFlow Manager, by opening the configuration screen in the AddressFlow application.</para><para>The following web service methods are available. For this example, the web host name is described as [AddressFlowServer]:</para><para>Run a Job</para><para>The method attempts to run the job that is defined in JSON formatted data in the request body.</para><para>HTTP:		POST  Address:	 http://AddressFlowServer/api/jobs/Queue</para><para>CASS Job</para><para>The following example illustrates JSON data for running a Quadient Architect CASS job, specifying input and output data mappings: </para><para>HTTP HEADERS  APIKey: [Your API Key]  HTTP BODY   {    "ServiceProvider": "CASSServiceProvider",    "Services": [{        "Name": "USAddressCorrection",        "Settings": [{"Name": "CT_CASING", "Value": "2"}]}],    "Inputs": [{        "Source": "Input_FilePath",        "Structure": "Delimited",        "Fields": [          {"Name": "RecordID", "Mapped": "FLD_RECORD_ID"},          {"Name": "AddressLine1", Mapped": "FLD_ADDRESSLINE1"},          {"Name": "City", "Mapped": "FLD_CITY"},          {"Name": "State", Mapped": "FLD_STATE"},          {"Name": "ZIPCode", Mapped": "FLD_ZIPCODE"}],        "Settings": [          {"Name": "Structure", "Value": "Delimited"},          {"Name": "DelimitedRecord", "Value": "C:\\File1.txt"}]}],    "Outputs": [{        "Source": "Output_FilePath",        "Structure": "Delimited",        "Fields": [          {"Name": "RecordID", “Mapped": "FLD_RECORD_ID"},          {"Name": "AddressLine1", "Mapped": "FLD_ADDRESSLINE1"},          {"Name": "AddressLine2", "Mapped": "FLD_ADDRESSLINE2"},          {"Name": "City", "Mapped": "FLD_CITY"},          {"Name": "State", "Mapped": "FLD_STATE"},          {"Name": "ZIPCode", "Mapped": "FLD_ZIPCODE"},          {"Name": "ErrorCode", "Mapped": "FLD_ERRORCODE"},          {"Name": "CarrierRoute", "Mapped": "FLD_CARRIER_ROUTE"},          {"Name": "LOTNumber", "Mapped": "FLD_LOT_NUMBER"},          {"Name": "DeliveryPoint", Mapped": "FLD_DPC"},],        "Settings": [          {"Name": "Structure", "Value": "Delimited"},          {"Name": "DelimitedRecord", "Value": "C:\\File1.out.txt"}]}],      "Reports": [{"Name": "CASS3553", "Path": "C:\\File1.pdf"}] }  </para><para>RedPoint Job</para><para>The next example is of JSON data to be sent in a POST to the AddressFlow web API for running an asynchronous RedPoint job. This method will return immediately, returning a Status code and JobID for the job that was started:</para><para>HTTP HEADERS  APIKey: [Your API Key]    HTTP BODY   {    "ServiceProvider": "RedPoint",    "Services": [      {        "Name": "RedPointProject",        "Settings": [          {"Name": "ProjectPath","Value": "repository:/// ProjectOrAutomationPath"},          {"Name": "ProjectParamName1","Value": "ProjectPramValue1"},          {"Name": "ProjectParamName2","Value": "ProjectPramValue2"}      ]      }    ]  }</para><para>Run a Task</para><para>The method will attempt to run the task that is defined in JSON formatted data in the request body.</para><para>HTTP:		POST  Address:	 http://AddressFlowServer/api/tasks/Run  </para><para> NCOALink PAF Task</para><para> The following is an example of JSON data for running a task that will create or renew a new NCOALink PAF account:</para><para>HTTP HEADERS  APIKey: [Your API Key]    HTTP BODY   {    "Name": "NCOAServiceProvider.CreateUpdatePAF",    "Settings": [      {"Name": "CustomerName", "Value": "CompanyName"},      {"Name": "Address", "Value": "Address"},      {"Name": "City", "Value": "City"},      {"Name": "State", "Value": "State"},      {"Name": "Zipcode", "Value": "ZIP+4"},      {"Name": "PafSignerName", "Value": "IndividualName"},      {"Name": "PafSignerTitle", "Value": "Title"},      {"Name": "PhoneNumber", "Value": "000-000-0000"},      {"Name": "FaxNumber", "Value": "000-000-0000"},      {"Name": "EmailAddress", "Value": "u...@domain.com"},      {"Name": "NAICS", "Value": "51223"},      {"Name": "ProcessingFrequency", "Value": "99"},      {"Name": "DefaultProcessingCategory", "Value": "NORMAL"}    ]  }     </para><para>RedPoint Job</para><para>Address:	http://AddressFlowServer/api/tasks/Run/RedPoint.RunProject</para><para>A generic HTTP POST can also be supplied to the web service, the name of the project and any parameters can be supplied using HTTP headers. When the web service is called, the process will return the response to the message when the RedPoint project completes. This provides a method for running transactional RedPoint jobs and returning the data that is output from the project to the caller of the web service:</para><para>HTTP HEADERS  APIKey: [Your API Key]  Param1: value  Param2: value  Param3: value  HTTP BODY  &lt;?xml version="1.0" encoding="UTF-8"?&gt;  &lt;root&gt;      &lt;request&gt;          &lt;OrderNumber&gt;1095&lt;/ OrderNumber &gt;          &lt;SalesRep&gt;Nancy Mayer&lt;/ SalesRep &gt;          &lt;OrderDate&gt;2017-10-15&lt;/ OrderDate &gt;          &lt;ManagerID&gt;23&lt;/ ManagerID &gt;          &lt;OrderTotal&gt;24551&lt;/ OrderTotal &gt;      &lt;/request&gt;  &lt;/root&gt;  </para><para>The body of the message will be saved to a temporary file on the server and the path will be provided as a parameter to RedPoint and a second temp file will be sent to RedPoint where the HTTP Response will be output.</para><para>InputFile </para><para>Will contain the location of the temporary file containing the HTTP body</para><para>OutputFile </para><para>Will contain the location of a file where the contents of the response to the HTTP message will be stored.</para></section></section><section><title>Service Providers</title><para>A ServiceProvider is a component that is loaded into the AddressFlow system and provides the functionality for each data service that is available within the system. This interface provides the link into the extensibility framework and allows developers to add new services, functions, and activations that are made available in the application. The functionality can be extended using the ServiceProvider interface.</para><section><title>Services</title><para>The Service interface provides the method for extending the set of data processing services available in the AddressFlow System. When a ServiceProvider is loaded into the AddressFlow system, all of the Service implementations included in the ServiceProvider are loaded into the system and made available as services that can be performed on the input data.  </para></section><section><title>Settings</title><para>When a data service job is run, the ServiceProvider uses a collection of both required and optional settings that control how the job is run. The Setting interface provides the method of defining each property that is available to be included in a job definition. By defining these settings in the ServiceProvider the system is able to display the settings in the job configuration user interface and to validate the values when running the job.  </para></section><section><title>Tasks</title><para>Tasks can be used to facilitate custom reporting, custom logging, and compliance tracking for the jobs performed by the Service Provider. The Task interface allows developers to control exactly what happens when the task isrun. When a ServiceProvider is loaded into the AddressFlow system, all of the Task implementations included in the ServiceProvider are loaded into the system and made available as tasks that can be performed. Job templates can reference the desired task and then invoked in the job.</para></section><section><title>Events</title><para>Job events are components that are loaded into the AddressFlow system and provide the functionality that is executed as the start or completion of a job occurs. This interface extends the AddressFlow framework and allows developers to add new events that can be used to notify users or provide support for external completion routines. </para></section><section><title>Event Types</title><para>The coding for Events are implemented and stored within DLLs that are placed in the AddressFlow\Tasks folder. Developers can create a Task library, and then data processors can reference the Task in .job definitions. The job processing system supports two types of events that can be implemented and invoked during the execution of a job.</para><itemizedlist><listitem><para>Job Start Event — Runs at the start of a job.</para></listitem><listitem><para>Job Completion Event — Runs at the end of a job.</para></listitem></itemizedlist></section></section><section><title>Additional Resources</title><para>The following resources are available to help you with your software.</para><section><title>Support Articles</title><para>Did you know? Quadient offers tips, tricks, and best practices for using Quadient products. Support articles can help empower both experts and new users. To learn more, visit the <link xmlns:xlink="http://www.w3.org/1999/xlink"; xlink:href="https://community.satorisoftware.com/community/s/";><emphasis role="underline">Quadient Knowledge Base</emphasis></link>. </para></section><section><title>How to Contact Support</title><itemizedlist><listitem><para>Quadient Community online:  <link xmlns:xlink="http://www.w3.org/1999/xlink"; xlink:href="https://community.satorisoftware.com/community/s/contactsupport";><emphasis role="underline">https://community.satorisoftware.com/community/s/contactsupport</emphasis></link></para></listitem><listitem><para>Email: <link xmlns:xlink="http://www.w3.org/1999/xlink"; xlink:href="mailto:suppor...@quadient.com"><emphasis role="underline">suppor...@quadient.com</emphasis></link></para></listitem></itemizedlist></section></section></article>
XMLmind Word To XML Support List

Reply via email to