SMS:Dynamic Model Interface Schema
The dynamic model interface is available in SMS version 11.2 and later. It is primarily a tool for developers. The dynamic model interface provides a way to quickly generate an interface for a numeric model.
Dynamic dialogs are a quick way to generate dialogs without having to compile code. To add or delete a widget on a dynamic dialog, the user simply modifies the XML document. When the modified document is loaded, the new/modified dialog exists. The XML document defines the layout, behavior and the different dialog controls.
The dialog is divided into 2 sections, the tree and the widget view. The tree is on the left side of the dialog and it contains groups and items that represent data. Clicking on a group or item will result with the widget view being updated to match the selected tree or group item.
- Order of the tree items and groups will match the order defined in the XML file.
- Clicking on group will display all children items in the widget view.
- Clicking on a single item will display associated widgets in widget view.
- Tree item will also display the values in a non-editable field.
- Unique_name use format: file::unique_name#value
- Widgets or groups of widgets can be loaded from an outside file by using <link_to_xml>.
- Multiple widgets when displayed on right side can be expanded/collapsed – TO BE DETERMINED
- Can have nested groups
- Keywords are words SMS has reserved in the schema and can not be used as unique names. All keywords will start with a “#”. Here is a list of available keywords:
- #card_name
- #geom_name – name of geometry as it shows up in the project explorer
- #project_name
- #value
- #units
- #xmdf_path – path inside the XMDF file
- #file_name
- #file_path
- #sms_path – path in sms project explorer once inside a geometric item
- #count (used for a widget in a table for counting the rows/columns)
- #geom_guid
Projection keyword:
- #horizontal_datum: NAD83 |NAD27|LOCAL
- #horizontal_system: UTM|STATE_PLANE|GEOGRAPHIC|LOCAL
- #horizontal_units: FEET|METERS|DEGREES
- #horizontal_zone: 3104 etc
- #vertical_datum
- #vertical_units
Additional keywords are defined with the various custom control widgets.
Note: In changing from version 1 to version 2, all tags that were <custom_control_XXXX> were changed to <control_XXXX>.
Element <alignH>
Info | Align text horizontally in a text box. Keywords are LEFT, RIGHT, CENTER, and JUSTIFIED |
Versions | 1, 2 |
Attributes | none |
Children | none |
Used by | text_box |
Example |
<text_box> <unique_name>edtD50Units</unique_name> <alignH>CENTER</alignH> <text>mm</text> </text_box> |
Element <alignV>
Info | Align text horizontally in a text box. Keywords are BOTTOM, TOP, and CENTER |
Versions | 1, 2 |
Attributes | none |
Children | none |
Used by | text_box |
Example |
<text_box> <unique_name>edtD50Units</unique_name> <alignV>TOP</alignV> <text>mm</text> </text_box> |
Element <arc_att>
Info | Used to specify what attributes should be used for the arcs of a coverage. |
Versions | 2 |
Attributes | none |
Children | menu_item |
Used by | coverage |
Example |
Element <attribute_set>
Info | This represents an item in the project explorer that is some sort of grouping. |
Versions | 3 |
Attributes | none |
Children | takes, menu_item |
Used by | model |
Example | See the model example. |
Element <blue>
Info | The blue element of a color. Ranges from 0 to 255. Added in SMS 11.2. |
Versions | 1, 2 |
Attributes | none |
Children | none |
Used by | color |
Example |
This would change the text to a bright red color. <text_style> <color> <red>255</red> <green>0</green> <blue>0</blue> </color> <text_style> |
Element <bold>
Info | Sets the text to be bolded. Added in SMS 11.2. |
Versions | 1, 2 |
Attributes | none |
Children | none |
Used by | text_style |
Example |
This would bold the text when the value in the edit_box is less than 0.0. <edit_box> <unique_name>edtA</unique_name> <default>1.0</default> <text_style> <bold></bold> <condition>edtA LESS_THAN 0.0</condition> <text_style> </edit_box> |
Element <card>
Info | Determines the card name and format when the item is exported. For more examples see <export_format>. |
Versions | 1, 2 |
Attributes | none |
Children | card_name, export_format, export_location, dependency, export_table (version 1), anything beginning with “process_each_”, export_group, export_optional |
Used by | item (version 1), file_def (version 2) |
Example |
<item> <text>Formulation</text> <card> <card_name>FORMULATION</card_name> <export_format>card "formulationUnits"</export_format> </card> |
Element <card_name>
Info | The name of the card which is used in the card file. |
Versions | 1, 2 |
Attributes | none |
Children | none |
Used by | card |
Example |
Element <check_box>
Info | Widget that displays text that is checked/unchecked. |
Versions | 1, 2 |
Attributes | none |
Children | text, default, unique_name, dependency, export_text_checked, export_text_unchecked, text_style |
Used by | item |
Example |
<check_box> <text>Calculate Sediment Transport</text> <default>checked</default> <unique_name>togCalcSedimentTransport</unique_name> <export_text_checked>ON</export_text_checked> <export_text_unchecked>OFF</export_text_unchecked> <dependency>…</dependency>… </ check_box > |
Element <color>
Info | The color of an item, expressed in red, green and blue values ranging from 0 to 255. All 0 values for red, green and blue is black. Added in SMS 11.2. |
Versions | 1, 2 |
Attributes | none |
Children | red, green, blue |
Used by | text_style |
Example |
This would change the text to a bright red color. <text_style> <color> <red>255</red> <green>0</green> <blue>0</blue> </color> <text_style> |
SMS – Surface-water Modeling System | ||
---|---|---|
Modules: | 1D Grid • Cartesian Grid • Curvilinear Grid • GIS • Map • Mesh • Particle • Quadtree • Raster • Scatter • UGrid | |
General Models: | 3D Structure • FVCOM • Generic • PTM | |
Coastal Models: | ADCIRC • BOUSS-2D • CGWAVE • CMS-Flow • CMS-Wave • GenCade • STWAVE • WAM | |
Riverine/Estuarine Models: | AdH • HEC-RAS • HYDRO AS-2D • RMA2 • RMA4 • SRH-2D • TUFLOW • TUFLOW FV | |
Aquaveo • SMS Tutorials • SMS Workflows |