SensorML OGC 12-000
Copyright © 2014 Open Geospatial Consortium
53
7.4 Requirements Class: Aggregate Process Requirements Class
http:www.opengis.netspecsensorml2.0reqmodelaggregate-process
Target Type Derived Encoding or Software Implementation Dependency
http:www.opengis.netspecsensorml2.0confmodelcore-process
An aggregate process is derived from abstract process model, as presented in Clause 7.2.
Requirement
http:www.opengis.netspecsensorml2.0reqmodelaggregate-processdependency-core
Req 22. A schema or encoding definition passing the “Aggregate Process” conformance test class shall first pass the “Simple Process” conformance test
class. Requirement
http:www.opengis.netspecsensorml2.0reqmodelaggregate-processpackage-fully-implemented
Req 23. A schema or encoding definition for an aggregate process shall correctly implement all UML classes defined in the “AggregateProcess” package described
in this section.
7.4.1 Aggregate Process Definition
An aggregate process is a collection of autonomous component processes with an explicit mapping of the data flow between these processes. Components of an aggregate process
can be simple processes i.e. atomic or be aggregate process themselves. Aggregate processes can include both physical and non-physical i.e. logical components.
Requirement
http:www.opengis.netspecsensorml2.0reqmodelaggregate-processdefinition
Req 24. A process shall be modeled as an aggregate process if it provides a processing function with well‐defined inputs and outputs, if there is intent to further divide
the process description into sub‐processes, and if knowledge of its physical location is of no importance.
Requirement
Copyright © 2014 Open Geospatial Consortium
54 In SensorML, an aggregate process is agnostic to the execution engine that may perform
the actual execution of individual sub-processes and manage the execution sequencing and the flow of data between the components. Also, while it is possible in SensorML to
more explicitly define the data encoding if desired by using the encoding specifications defined in the SWE Common Data Specification, SensorML is typically agnostic to the
protocol and format of data flowing between logical processes. This provides significant flexibility as to where and how a SensorML-defined aggregate
process is executed. While the ProcessMethod explicitly defines the algorithm for executing an atomic process, the actual execution of that algorithm and the management
of data flow between processes can be handled by any software system able to parse a SensorML-defined aggregate process and sequence the execution of the processes.
A SensorML-defined process component or aggregate process can be executed through web services, within the CPU of a laptop, mobile device, or supercomputer, or a mix of
these. Furthermore, a SensorML-defined aggregate process can be executed wherever desired, be it at a large data or computation center, within a visualization and analysis
client on a laptop, or on-board a sensor or actuator system. Thus, SensorML provides the choice to either bring the process to the data or bring the data to the process.
The model for AggregateProcess is shown in the figure below. AggregateProcess extends the AbstractProcess model and adds one or more process components and
explicit linking of data flow between these components. The component property takes any component derived from AbstractProcess as its value. Component process
descriptions can be provided inline or by reference. The derivation from AbstractProcess means that an AggregateProcess instance itself has
its own inputs, outputs, and parameters, as well as identification and possible metadata.
http:www.opengis.netspecsensorml2.0reqmodelaggregate-processcomponents
Req 25. A schema or encoding implementation of the AggregateProcess class shall support the inclusion of one or more component processes and a means for
explicitly specifying data flow between these components.
SensorML OGC 12-000
Copyright © 2014 Open Geospatial Consortium
55
Figure 7.15 – Model for Aggregate Process
Copyright © 2014 Open Geospatial Consortium
56
7.6 Requirement Class: Physical Component Requirements Class