# CHART Activity algorithm specification files
namespace xsi = "http://www.w3.org/2001/XMLSchema-instance"
element activity {
attribute xsi:noNamespaceSchemaLocation { "http://chart/schemas/activity.xsd" } &
## Give about one sentance describing what this activity does.
element description { text } &
## Link to a web page giving more information.
element url { text }? &
## List all events this activity can raise.
element event { text }* &
## General purpose processing algorithm or a report generator.
element class { "algorithm" | "report" } &
## Name of an executable to test this activity.
element test { text }? &
## For a processing algorithm name the executable file.
element executable { text }? &
## For a report activity name the report template XML file inside
## settings.REPORT_TEMPLATE_DIR.
element template { text }? &
## Allow heavy-weight activities to be restricted to workers with more resources
element weight { xsd:float }? &
## Allows workers to target some activities first
element priority { xsd:float }? &
## State which parameters the algorithm needs to be called with
element calling-convention { "none" | "timerange" | "sid+timerange" | "filename" | "sid+hourly" | "sid+timerange+table"} &
## Tell the worker this activity should be called automatically after certain tables are written to
element trigger {
element with-stats { xsd:boolean }? &
element type { "orbital" | "daily" | "hourly" | "threedaily" | "20min" }? &
element table { text }? &
element latency { xsd:duration }?
}* &
## Declare all output tables we can write to.
element output-table { text }* &
## This is purely cosmetic. Tell the report viewer to group together all reports with the
## same <group> value.
element group { text }* &
## Enable only for SIDs
element sid { text }* &
## When viewing a report in the report viewer the user can pull down a list of other
## reports to switch to. If the activity has <related> reports these are shown at the top.
element related {
element report { text }*
}* &
element weight { xsd:integer }? &
element priority { xsd:integer }? &
element configuration {
element parameter {
element name { text } &
element description { text } &
element datatype { "path" } &
element value { text }
}+
}?
}