Creating new Dataset schemas
To create a new dataset schema, the following steps must be taken:
- Create schema file An xsd schema file must be created to define the new schema. These are generally placed in a folder named
gisSchemasin the root directory of the defining plugin. The xsd file must define the fields of the new schema. See the
maeviz-bridgeDamage_1.0.xsdin the ncsa.maeviz plugin for an example. As in the example, the field names must be prefixed with "maeviz." Also, the main part of the field name (after the maeviz prefix) must be 10 characters or less. The primitive type of the field (double, string, etc) must also be correctly specified.
- Add Schema extension point The extension point
ncsa.gis.gisSchemasmust be extended to define the schema.
The id of the schema
A friendly name for the schema
A version identifier for the schema.
A short type name for the schema
A user-friendly description of the schema
The schema file defined in the previous step
The format of the schema. Predefined formats include:
table. If other formats are desired, they must be defined, which is outside the scope of this document
The list of fields that are required as a minimum for this schema. These will be prompted to map to during ingestion
For shapefiles, the suggested smart layering position in the map. Should be between 1 and 100, where lower numbers appear above lower numbers. A mapLayer of -1 indicates that the dataset should be invisible by default
A category name for the schema. Categories determine what subfolders the schemas appear in the repository view.
- Add field metadata An xml file should be created to define field-specific metadata for the schema. These files should be placed in a folder named
gisMetadatathat sits parallel to the
gisSchemasfolder. Files in here should have the same name as their corresponding schema xsd file, except with xsd renamed to xml. Each field should be defined using a
column-metadataelement with the following attributes:
The id to match the column id from the xsd file. Should not include the
A friendly name for the field
An indicator of whether this field should be displayed as a numeric value (for example, some schemas have string fields that should be interpreted as numbers
The default units of this field. This abbreviation should come from a unit tag defined in the
The length of the field. This should be as small as possible without truncating data
The importance of the field. Values are
user(interesting to the user),
mainValue(the one main important value of the dataset),
unique(a unique key field), and
summary(a field that can be used for grouping in summary views. If a field does match any of these importance levels, the importance attribute should be ommited.
This should be defined if the field is a new result value for this schema
If the field is aggregated in a view or table, what type of aggregation makes the most sense for this field. Values are