VPF conversion control file format
When using the Export To VPF tool or the Import From VPF tool, you can supply an optional conversion control file. Using this control file, you have more advanced control of the file conversion. For example, you can ignore specific VPF feature classes when importing from VPF or ignore items while exporting to VPF.
When a coverage is converted, the EXPORT section of the conversion control file may (but is not required to) have three subsections: global commands, primitive commands, and feature commands. Each subsection may contain any number of commands, and each ends with the beginning of the next EXPORT subsection, the beginning of the IMPORT section, or the end of the conversion control file (as indicated by END).
Control File Commands
Global commands
Global commands affect certain characteristics of the VPF tables, coverages, libraries, and databases.
- IGNORE <item1>.... {item9}—Ignores INFO items during translations. Up to nine items may be given on any one ignore statement. Once an INFO item is ignored, the data will be lost during the translation to VPF and will not be regained when using VPFIMPORT.
- CREATE NARRATIVE <level> <table> <text_file> {textwidth} (description}—Converts an input ASCII text file to a VPF narrative table.
- CREATESPATIALINDEX <CELL | RANGE> :—Specifies the type of spatial indexes that will be created. RANGE-based indexes use equations found in Appendix F of the MIL-STD-2402 (page 164) and should be considered the “older” method. CELL-based indexes use the equations found in Appendix F of CHANGE NOTICE 1 of the MIL-STD-2402 (page 164) and should be considered the “newer” method. If the type of spatial index is not specified within a conversion control file, CELL-based indexes will be created as the default.
- SET <table> <column> <value>—Sets a VPF table column to a specific value.
- SET NARRATIVE <vpf_table> <narrative_name> {level}—Specifies a narrative table to be associated with a VPF table.
- SET DESCRIPTION <vpf_table> <description> {level}—Specifies a description string associated with a VPF table.
- SETVDT <vpf_table | Null> <item_name> <info_table>—Creates the specified VDT table for the coverage from an INFO lookup file with a predefined format.
- SETBYTEORDER <least | most>—Sets the byte order for all the VPF tables converted.
- SET NULL <vpf_table> <item> <info_null_value>—Allows you to predefine a VPF null value in ARC/INFO. For example, you might define "-9" as a VPF null for a specific item in a specific VPF table upon export. When exported to VPF, the records with "-9" will be converted to the appropriate VPF null for that item type.
- SET COVDESC <description>—Specifies the description used for the coverage in the Coverage Attribute Table (CAT).
- NOCAT—Specifies that this coverage should not be added to the Coverage Attribute Table.
- ITEMORDER <item1>....{item9}—Allows you to modify the item order of a table upon export. All items must be represented within this command section for the items to be ordered correctly. If you have more than nine items, multiple ITEMORDER lines can be used in succession. When used in the global section, this command will only work using the TABLE option.
Primitive commands
Primitive commands begin with the PRIMITIVECLASS command, which identifies the VPF primitive type affected by subsequent commands.
- PRIMITIVECLASS < CND | END | EDG | FAC | RNG | TXT | EBR | FBR > (respectively, connected nodes, entity nodes, edges, faces, rings, text, edge-bounding rectangles, and face-bounding rectangles).
- ITEMBECOMES <item> <column> {col_type) (count} {keytype} {description} {vdt} {thematic_index} {narrative}
- IGNORE <item1> {item2}............{item9}—Ignores specified columns in the ARC/INFO primitive table when the conversion takes place (IGNORE) (Columns required by VPF cannot be ignored, however.)
- ITEMORDER <item1>....{item9}—Allows you to modify the item order of a table upon export. All items must be represented within this command section for the items to be ordered correctly. If you have more than nine items, multiple ITEMORDER lines can be used in succession.
Feature commands
Feature commands begin with the FEATURECLASS command, which identifies the ARC/INFO feature class affected by subsequent commands. This section describes the FEATURECLASS command syntax and functions.
- FEATURECLASS <arc_feature_class> {feature_table | IGNORE} {description} {info_table | ONE}—Arguments allow you to specify an ARC/INFO feature class to be ignored during conversion; to rename, describe, and specify the INFO table that serves as the source for the VPF feature table; to create complex features; and to force a one-to-one relationship between the features and primitives in the route and region feature classes.
- <arc_feature_class>—Valid feature classes are ARC, NODE, POINT, POLY, ANNO.subclass, ROUTE.subclass, REGION.subclass, SECTION.subclass, and COMPLEX. See "Creating complex features" below for a description of COMPLEX.
- {feature_table | IGNORE}—Either renames the VPF table to be created or ignores the specified <arc_feature_class> during conversion.
- {description}—Specifies the description for the VPF feature table.
- {info_table | ONE}—Specifying an info_table name in this argument creates a VPF feature table directly from the INFO table specified.
- ADDCOLUMN <column> <col_type> <count> <keytype> {description} {vdt} {thematic_index} {narrative}
- ITEMBECOMES <item> <column> {col_type} {count} {keytype} {description} {vdt} {thematic_index} {narrative}—VPF column definition for an INFO item.
- IGNORE <item1> {item2...item3}—Ignores INFO items.
- GROUPBY <column>—Only valid within a FEATURECLASS block when an {info_name} has been specified. When converting, the specified column in the INFO table becomes the ID of the VPF feature. This groups all records with the same value for the column into a single record (a single feature).
- JOIN <vpf_table> <info_table>
- SCHEMA {table1} {key1} {table2} {key2}
- ITEMORDER <item1>....{item9}—Allows you to modify the item order of a table upon export. All items must be represented within this command section for the items to be ordered correctly. If you have more than nine items, multiple ITEMORDER lines can be used in succession.
Creating complex features
Complex VPF features may be created by specifying COMPLEX as the <arc_feature_class>,for example, the command below:
FEATURECLASS COMPLEX airport.cft ‘Airports’ airport.ftr
This creates a complex VPF feature table with the name 'airport.cft' and a description of airports from the INFO table airport.ftr.
When COMPLEX is used, defining feature-to-feature and feature-to-primitive relationships is your responsibility. For that reason, FEATURECLASS commands that specify a COMPLEX feature class should be followed by SCHEMA commands and any necessary JOIN commands.