fxvpf: VPF Digest

A coverage-based translator, converting to nodes, polylines, polygons and text with or without column attributes.

The system is directory based, each directory (known as a dataset) containing sub-directories known as coverages (aka themes) which in turn contain tables (aka features). Multiple datasets can be open, and selection is done on tables/features across all coverages/themes. Coverages have no inherent symbology, so the default symbology will be assigned to all graphic primitives.

Nothing is known about the projection or units of measure of VPF data. These must be set by the client if required.

Extensions to Standard Commands

open/close

open | close <dir> ...

Many datasets can be open for selection at a time.

select

select {* | <column>, … } from <table> where <conditions>

Selection can be on all, none or selected column attributes.

Additional Commands

point_column

point_column <column_name>

When retrieving point data, the default action is to create marker (node) graphic primitives. This command specifies a column from the non-graphic meta data, whose text values are to be used to create text primitives instead of marker primitives.

point_text

point_text <text>

When retrieving point data, the default action is to create marker (node) graphic primitives. This command specifies a constant text value to be used to create text primitives instead of marker primitives.

query_tables

query_features <client_string_array>

query_tables <client_string_array>

Returns to the client the names of all feature tables available for selection via the select command. Only tables in current selected themes are returned. If no parameters are supplied the table names will simply be printed on the client.

query_themes

query_themes { <client_string_array> { <client_string_array >
     { < client_numeric_array > } } }

Returns to the client up to 3 sets of data:

the descriptions of all themes/coverages available in the “open” datasets,
the select names of all themes/coverages,
whether or not the themes/coverages are currently available for selection.

If no parameters are supplied the information will simply be printed on the client.

set_themes

set_themes <theme | coverage> ...

Make one of more themes/coverages available for selection. Either theme descriptions or their select names may be provided.