|Top Previous Next|
Preparing a Query-based corridor schematic:
A Query that returns one row per schematic (road section) required.
This query should include enough information to calculate the schematic name, section label, section condition. Field names do not matter, as calculated fields will be used to extract the data.
A corridor schematic
A corridor schematic contains a section Schematic/DynamicContent/ that contains a list of ContentSpec tags. Each ContentSpec tag contains a <Query> tag indicating the query that should be used (if this is a query-based dynamic schematic) A SequenceDirection tag indicating the direction that his corridor travels towards. A list of parameters, (if this is a query-based dynamic schematic) The parameters are values that will be passed to the query. The Name indicates the parameter name, the Value should either be static, or start with a tilde (~) to cause it to be parsed. For example, ~Study.QueryParam.ASCII("","","AParam") will return the current study's SQL parameter called AParam. The DataType specifies the data type of the parameter (i.e. Number, String, Date, etc.)
A calculated fields record containing three fields. (AreaCondition, AreaLabel and Schematic)
AreaCondition should resolve to a string that can be parsed to an expression and returns true if a crash belongs in that schematic/road section.
AreaLabel should resolve to a string that is the label placed next to that schematic section.
Schematic should resolve to a string that is the name of the schematic to use for the current section.
Preparing a sequence-based corridor schematic:
A corridor schematic
A corridor schematic contains a section Schematic/DynamicContent/ that contains a list of ContentSpec tags. Each ContentSpec tag contains a <First>, <Last> and <Increment> tag. First and Last describe the start and end of the road section to be rendered. The values in the tags may be static (probably useless) or may start with a tilde (~) which indicates it should be parsed before use. For example, ~AsNumber( Study.QueryParam.ASCII("","","FirstMilepost") ) will return the value used in the current study for FirstMilepost. Increment tells how much to increment the range by with each iteration. This value should generally point to a program variable, but may be static as well. A SequenceDirection tag indicating the direction that his corridor travels towards.