Products         Services         Customers         News         Downloads         Licensing         Shop    

 DocFlex Technology

About
Key Features
Data Processing
Formatting
Templates / Template Designer
Documentation

 DocFlex/XML

About
Documentation
Samples
XMLDoc
XSDDoc
Tutorials

 DocFlex/Javadoc

About
Doclet
Examples
Templates
Tutorials

 DocFlex/Together

About
Examples
Basic Templates
Documentation
Tutorials

 Try

Downloads
Registration
Trial License

 Buy

Licensing/Pricing
Shop

 Company

News
Products
Services
Customers
About Us
Imprint
Legal
Contact
Links
 

About DocFlex/XML

  1. Overview
  2. Key Features
  3. Technical Requirements
  4. Editions
  5. Future Development

1.  Overview

DocFlex/XML is the most advanced application of DocFlex Technology (developed on top of the experience accumulated from the previous two: DocFlex/Javadoc and DocFlex/Together).

This tool allows you to visually design the automatic generation of professional quality reports and documentation by the data obtained from your XML files. The output documents can be generated in RTF and HTML formats. The HTML can be both single-file and multi-framed documentation. The TXT (plain text) output is supported as well, which enables you to use this tool also for various XML file transformations.

Such a generation is programmed using templates, which function a lot the same as the full-blown scripting-language programs (such as XSLT scripts, for instance). However, the advantage of the template approach offered by the DocFlex Technology is that it requires very few coding of anything manually and allows designing your templates in WYSIWYG form in the terms of things you would expect to see in your output documents rather than on the level of abstract language operators. (See Creating a Sample Template flash tutorial for that matter.)

The templates are visually designed basing on the information obtained from DTD or XSD (W3C XML Schema) files mostly by using mouse and specifying properties in Template Designer dialogs. The data type information (i.e. XML elements and attributes) appears in various treeviews which are used to program the data processing in the templates.

The formatting of the generated documents is programmed by specifying formatting properties of template components (some of which can be changed simply by dragging mouse in the designer pane). Many of such properties are graphically visualized by the Template Designer.

The output generator can be both launched from the command line and invoked directly from the Template Designer's main menu which allows you to immediately see the result produced by your templates yet during designing them (no compilation or running any stand-alone interpreter are required).

2.  Key Features

  • The high quality graphic Template Designer
  • The templates are designed basing on the data type information obtained from DTD or XSD (W3C XML Schema) files.
  • Data processing
    • Generating reports/documentation by the data obtained from XML files.
    • The ability to open and process multiple XML file and process all of them at once as a single virtual XML document.
    • A single report may contain data from multiple XML files with different structure.
    • Full support for XML namespaces.
    • Sophisticated capabilities for data querying and sorting based on an extension of XPath.
    • The ability to traverse XML documents with a network structure (using IDREF/IDREFS attributes)
  • Inserting images
    • statically specified in templates
    • dynamically, obtained directly from XML documents (base64- or hex-encoded) or from arbitrary files, URLs or Java resources
    • supported image formats: GIF, PNG, JPG, WMF, BMP
  • Creating hyperlinks
    • generation of an extensive network of hyperlinks interconnecting the whole documentation
    • possibility to download several frame windows from a single hyperlink at once
  • Output formats
    • HTML (both plain and multi-framed)
    • RTF
    • TXT (plain text)
    • XSL-FO (planned for version 2)
  • Universal support for various formatting techniques
    • text formatting: fonts, colors, borders
    • paragraph formatting: margins, pagination control, borders, colors
    • border formatting: styles (solid, double, dashed, dotted), thickness, colors
    • tables: arbitrary cell layouts, borders, nested tables
    • lists: bulleted, numbered, delimited
    • document fields (RTF): page number, number of pages, TOC, etc.
    • page formatting: size, orientation, margins, headers/footers
    • formatting styles
    • rendering of embedded HTML, which means interpreting in non-HTML output formats (such as RTF) the HTML tags embedded in text data (e.g. documentation comments). Almost all HTML tags practically usable in doc-comments are supported.
  • Project development
    • The possibility to call templates from one another.
    • The elaborated support of template parameters.
    • Both features enable you to reuse the same templates for different tasks as well as organize template libraries, which may help you to shorten the project development time and simplify its further updates and maintenance.
    • The open Java API which allows launching the DocFlex generator directly from your Java code, pass template parameters as well as to extend your templates with custom written Java classes. (coming soon)

See also DocFlex Technology | Key Features.

3.  Technical Requirements

DocFlex/XML requires Java™ Version 6.x, 5.x or 1.4.x installed on your system.

DocFlex/XML is a pure Java application. The Template Designer GUI is implemented entirely using Swing. Therefore, everything is supposed to work on any operating system where Java2 Runtime Environment can be installed.

Specifically, the DocFlex/XML software (all editions) available for downloads includes MS Windows BAT files and Linux shell script files that allow running DocFlex/XML on those operating systems immediately after installing it. For more details, see product README files on the downloads page.

To parse XML files, DTDs and XML Schemas, DocFlex/XML uses Apache Xerces2 Java Parser version 2.9.0, whose binaries are included in the DocFlex/XML downloads. In the case of any questions concerning this library, please refer to the Apache Xerces home page: http://xerces.apache.org.

Note:   Certain heavy template applications (e.g. XSDDoc) may require considerable computational resources. To run them, you may need a powerful enough computer (e.g. with Intel Pentium 4 or AMD Athlon processor) and at least 512 MB RAM memory.

4.  Editions

Currently, DocFlex/XML comes in two editions:
  1. DocFlex/XML - Full Edition
  2. DocFlex/XML (Kit) - Reduced Edition

Full Edition

The full edition – called “DocFlex/XML” as is – provides all functionality currently implemented about DocFlex/XML. This includes:
  1. The graphic Template Designer, which will allow you to visually design your own sophisticated documentation/report generators (by any data stored in XML files) implemented in the form of template application as well as to modify any existing ones.
  2. The template interpreter / output generator, using which you can execute any template application and generated the high quality output documentation in framed multi-file HTML, single-file HTML and RTF output formats (as well as plain text files, which you can use to transform your XML data into other representations).
  3. XMLDoc (“XML File Documentor”) template application that will allow you to compile any number of generic XML files into a nice looking web-ready HTML or printable RTF documentation with the optional inclusion of the namespace binding report (that shows which namespace prefixes are bound to which namespace URIs and where).
  4. XSDDoc (“XML Schema Documentation Generator”) template application, which implements a professional quality W3C XML Schema Documentation Generator able to produce both multi-framed Javadoc-like HTML and printable RTF documentation.

    Note:   This is a commercial template application that requires separate licensing. For more details, please see Licensing / Pricing | Licensing of Templates | Commercial Template Applications.

The software included in the full edition may work in three modes: limited, full and trial.

The Limited Mode is covered by the Limited Free License. It is activated by default when no other licenses have been found. This mode allows you:

  • To run the Template Designer in demo mode. You will be able to investigate any functionality, however, unable to save any your created/modified templates.
  • To run XMLDoc without limitations.
  • To run XSDDoc (XML Schema Documentation Generator) in limited mode.

    Note:   If you have a license for “XSDDoc” template application, you will be able to run it also in full mode even without a special license for DocFlex/XML itself.

  • To use HTML output generator without limitations.
  • To use RTF output generator, however, with some features disabled.
The Full Mode is activated in the presence of a Commercial or Academic License for the full edition of DocFlex/XML. This mode allows you:
  • To use the Template Designer without limitation to created/modified templates.
  • To execute custom templates created/modified under Commercial, Academic or Trial Licenses.
  • To run XMLDoc without limitations.
  • To run XSDDoc (XML Schema Documentation Generator) in limited mode (with some features disabled).

    Note:   To use XSDDoc without limitations, a separate license for it is required.

  • To use all output format generators (HTML, RTF, TXT) without limitations.
The Trial Mode is activated in the presence of a Trial License for the full edition of DocFlex/XML. In this mode, the software will work the same as in the full mode except the following limitations:
  • You may use DocFlex/XML working in trial mode only during the limited period of time (30 days) provided by your Trial License.
  • Any output documents generated in trial mode will contain special trial markers. Such documents may be used only for evaluation of this software. Any other usage is prohibited!
  • Any templates created or modified (the last time) in trial mode will not work with DocFlex/XML (Kit). However, you may continue to use or modify such templates once you have installed a Commercial or Academic License for the full edition.

DocFlex/XML (Kit)

This is a reduced edition of DocFlex/XML without the Template Designer. It includes:
  1. The template interpreter / output generator, using which you can execute the template applications included in this software as well as any custom templates created or modified the last time under a Commercial License (for the full edition).
  2. XMLDoc (“XML File Documentor”) template application that will allow you to compile any number of generic XML files into a nice looking web-ready HTML or printable RTF documentation with the optional inclusion of the namespace binding report (that shows which namespace prefixes are bound to which namespace URIs and where).
  3. XSDDoc (“XML Schema Documentation Generator”) template application, which implements a professional quality W3C XML Schema Documentation Generator able to produce both multi-framed Javadoc-like HTML and printable RTF documentation.

    Note:   This is a commercial template application that requires separate licensing. For more details, please see Licensing / Pricing | Licensing of Templates | Commercial Template Applications.

DocFlex/XML (Kit) may work in three modes: limited, full and trial.

The Limited Mode is covered by the Limited Free License. It is activated by default when no other licenses have been found. This mode allows you:

  • To run XMLDoc without limitations.
  • To run XSDDoc (XML Schema Documentation Generator) in limited mode.

    Note:   If you have a license for “XSDDoc” template application, you will be able to run it also in full mode even without a special license for DocFlex/XML (Kit) itself.

  • To use HTML output generator without limitations.
  • To use RTF output generator, however, with some features disabled.
The Full Mode is activated in presence of a Commercial or Academic License for DocFlex/XML (Kit). This mode allows you:
  • To execute custom templates created/modified only under a Commercial License (for the full edition).
  • To run XMLDoc without limitations.
  • To run XSDDoc (XML Schema Documentation Generator) in limited mode (with some features disabled).

    Note:   To use XSDDoc without limitations, a separate license for it is required.

  • To use all output format generators (HTML, RTF, TXT) without limitations.
The Trial Mode is activated in the presence of a Trial License for DocFlex/XML (Kit). This is the same as the full mode except the following limitations:
  • You may use DocFlex/XML (Kit) working in trial mode only during the limited period of time (15 days) provided by your Trial License.
  • Any output documents generated in trial mode will contain special trial markers. Such documents may be used only for evaluation of this software. Any other usage is prohibited!

5.  Future Development

General functionality

The following features are to be implemented gradually during 2008:
  • OASIS XML Catalogs

    Certain XML schemas (especially, those coming from http://www.oasis-open.org) use XML catalogs to reference one another in a big XML schema project. Currently, such XML schemas cannot be processed by XSDDoc.

    We are going to fully support the XML Catalogs very soon.

  • RTF Generator

    Most of the pagination settings (e.g. paper size, orientation, etc.), which currently can be assigned only in the templates, will be made possible to specify directly in the RTF Option Inspector (or on the command line using the -O option).

  • Internationalization

    A possibility will be supported to specify all static text labels that appear in the generated documentation not only directly in the templates (as it is now), but also by references in a separate property file (which will be supplied together with the templates).

    This will streamline the translation of all text labels into any non-English language and make it easier to migrate to a new version of the given template set. All our commercial template applications (e.g. XSDDoc and future WSDLDoc) will be made to support it.

XSDDoc templates (XML Schema Documentation Generator)

The following features are to be implemented gradually during 2008:
  • Dynamic hyperlinks in XML Schema annotations

    A possibility will be supported to insert within XML schema annotations the in-line links that point to the documentation generated for the specified XML schema components. This will work essentially the same as the inline {@link} tags in Javadoc.

    Within the schema annotations, such links will be defined using the XHTML markup like this:

    <a href="{@link ...}"> ... </a>
    where the content of the href attribute will specify how the actual hyperlink's destination must be generated.

    The same will be supported for the hypertext imagemaps (those defined with the <map> tags). This will allow you to enrich your XML Schema documentation with various images and diagrams depicting things that are directly hyperlinked to the details of the XML schema components related to them.

  • Navigation menu in framed HTML

    The framed HTML XML schema documentation will include the full-blown navigation menu similar to that in the standard JavaDoc.

  • Complex Content Model Trees

    Complex Content Models are defined in XML schema components (using other components) to describe all possible combinations of children of XML elements.

    They are currently documented and represented in the form of special expression using Kleene operators (see XSDDoc | XML Representation Summary | Complex Content Models). This is the standard way how Complex Content Models are represented (see, for example, W3C XML Schema Definition Language (XSDL) 1.1 Part 1: Structures).

    In addition to it, we are going to support the generation of an alternative representation, which will show the Complex Content Models in the form of trees, where the parenthesis used in the plain representation are transformed into tree branches and the Kleene operators become icons placed in the tree nodes. (Such trees are currently used in some XML schema designer tools).

  • Element Content Tree

    It will show for all XML elements defined in the schema which of them may contain which. Essentially, such a tree will represent a complete skeleton of a possible XML document described by the given XML schema.

  • Global Type Hierarchy Tree

    The “Type Derivation Tree” is currently generated for each complex or simple type component being documented.

    The complete tree will include all those local trees as branches. It will provide a global view of how the global types defined in the XML schema are derived from each other.

  • XML Schema Project Tree

    That tree will show which schemas import, include and redefine other sub-schemas (using the <xs:import>, <xs:include> and <xs:redefine> elements). This will give a single view of the entire XML schema project when it is broken into a number of modules.

  • Processing and documenting of “Substitution Groups”

    (Currently, this feature of W3C XML Schema language is ignored.)

  • Documenting of Notations

WSDLDoc templates (WSDL Documentation Generator)

We are working on such a documentation generator now. It will be implemented as the “WSDLDoc” template set, the same way as the current XSDDoc.

This will be the second Commercial Template Application of DocFlex/XML.

Copyright© 2003-2008 Filigris Works, Leonid Rudy Softwareprodukte. All rights reserved.