Note: The integer IDs below correspond to the ReferenceID element in CompoundIdentifiers
Note: This list supersedes, as of 20150129, the WorkItemOperation material in a previously circulated Excel.
Attribute | Type | Multiplicity | Description |
---|---|---|---|
WorkItemId | Integer | 0..1 | |
Notes | LoggedNote | 0..* | |
GuidanceAllocationIds | Integer | 0..* | |
MachineId | Integer | 0..1 | |
FarmId | Integer | 0..1 | |
FieldId | Integer | 0..1 | |
CropZoneId | Integer | 0..1 | |
PersonRoleIds | Integer | 0..n | |
OperationData | OperationData | 1..* | |
SummaryId | Integer | 0..1 |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
Id | CompoundIdentifier | 1 | Unique identifer R. Andres Ferreyra (Unlicensed): I think this needs to go; I see no reason for OperationData to need to exist independently of the LoggedData.
|
ConnectorIds | Integer | 0..n | A reference to the Connector objects linking MachineConfiguration and ImplementConfiguration (or two ImplementConfiguration) objects. Somewhat redundant because that info can be traced back through the ImplementConfiguration and its Connector references to machine and/or other impllements, but included here to help test / sanity check / select Connectors for processing / export. |
LoadId | Integer | 0..1 | A reference to the load. See ADAPT - Load / LoadDestination Discussion |
OperationType | OperationTypeEnum | 1 | The operation performed |
PrescriptionId | Integer | 0..1 | A reference to the Prescription, if any, used during this operation. If multiple products are used they will be included as a single multi-product prescription. |
ProductId | Integer | 0..1 | The product used for the operation |
VarietyLocatorId | Integer | 0..1 | A reference to the VarietyLocator layer used during this operation, if any |
WorkItemOperationId | Integer | 0..1 | A reference to the Work Item Operation that generated this work |
MaxDepth | Integer | 1 | Count of depth |
GetSpatialRecords() | IEnumerable<SpatialRecord> | Returns an IEnumerable of SpatialRecord | |
GetSections(Depth: Integer) | IEnumerable<Section> | ||
SpatialRecordCount | Integer | 1 | How many spatial records are there? |
EquipmentConfigID | Integer | 0..1 |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
Geometry | Shape | 1 | The geometry defining the location |
Timestamp | DateTime | 1 | The timestamp of the location. |
GetMeterValue(meter: Meter) | RepresentationValue | ? | |
SetMeterValue(meter: Meter, RepresentationValue: value) | |||
GetAppliedLatency(meter: Meter) |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
Id | CompoundIdentifier | 1 | UniqueIdentifier |
OperationDataId | Integer | 1 | A reference to the OperationData this section applies to |
Depth | Integer | 1 | Indicates which depth the section was recorded for |
Order | Integer | 1 | An incrementing value indicating the order of the sections from left to right |
SectionWidth | NumericRepresentationValue | 1 | The width of the section |
TotalDistanceTravelled | NumericRepresentationValue | 0..1 | Total distance travelled for the operation when section status was on |
TotalElapsedTime | NumericRepresentationValue | 0..1 | Total elapsed time for the operation when the section status was on |
Meters | Meter | 0..n |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
Id | CompoundIdentifier | 1 | UniqueIdentifier |
SectionId | Integer | 1 | A reference to the Section where this meter was recorded |
Representation | Representation | 1 | The object for what DDI is defined |
Values | Double | 1..n | The values recorded. Aligned by index with the sections
|
AppliedLatency | NumericRepresentationValue | 1 | The latency reported by the controller |
ReportedLatency | NumericRepresentationValue | 1 | The latency reported by the implement |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
UnitOfMeasure | UnitOfMeasure | 1 | The unit this meter was recorded in |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
ValueCodes | Integer | 1..* | Integers that correspond to the Code of an enumeration member. The specific enumeration is implicit in the Representation identified in the parent class. |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
Id | Integer | 1 | UniqueIdentifier |
SectionId | Integer | 1 | A reference to the Section that this summary applies to |
TotalDistanceTravelled | NumericRepresentation | 1 | The total distance traveled with this section on |
TotalElapsedTime | NumericRepresentation | 1 | The total elapsed time with this section on |
Attribute | Type | Multiplicity | Description |
---|---|---|---|
Id | CompoundIdentifier | 1 | The id of the calibration factor |
MeterId | Integer | 1 | The meter to apply the calibration factor to |
TimeScopeIds | Integer | 0...n | The time the calibration occurred. 20150903: R. Andres Ferreyra (Unlicensed) replaced datetime class with TimeScope, for consistency with other mandates. |
Value | NumericRepresentationValue | 1 | The value of the calibration. 20150903: R. Andres Ferreyra (Unlicensed) replaced Double type with NumericRepresentationValue, for consistency with other mandates. |
Note:
foreach (spatialRecord in operationData.GetSpatialRecords()) { var shape = spatialRecord.GetShape(); var time = spatialRecord.GetTimeElapsed(); for(depth=0; depth< operationData.GetMaxDepth();depth++) { foreach(section in operation.GetSections(depth) { var width = section.Width; foreach(meter in section.GetMeters()) { if(meter is NumericMeter) { var value = spatialRecord.GetMeterValue(meter); // Yo, note that there are different representations for meters... var appliedLatency = spatialRecord.GetAppliedLatency(meter); } else if(meter is EnumeratedMeter) { var value = spatialRecord.GetMeterValue(meter); } } } } } |