ADAPT - Grower / Farm / Field / Cropzone / ContactInfo / Location / Facility / FacilityTypeEnum Discussion

Grower

AttributeTypeMultiplicityDescription
IdCompoundIdentifier1
NameString1
ContactInfoContactInfo0..1Links to Contact Information object
ContextItemsContextItem0..*

Farm

AttributeType  MultiplicityDescription
IdCompoundIdentifier1
DescriptionString1
GrowerIdInteger0..1
ContactInfoContactInfo0..120150810: Added for ISOXML compatibility
TimeScopesTimeScope0..*
ContextItemsContextItem0..*

Field

FieldTypeMultiplicityDescription
IdCompoundIdentifier1
DescriptionString1
GrowerIdInteger0..1
FarmIdInteger0..1
AreaNumericRepresentationValue0..1

User-set area.

ActiveBoundaryIdInteger0..1Currently-active boundary
ContextItemsContextItem0..*
SlopeNumericRepresentationValue0..1Useful for erosion calculation
AspectNumericRepresentationValue0..1Useful for understanding causes of yield variability, etc.
SlopeLengthNumericRepresentationValue0..1Useful for erosion calculations
GuidanceGroupIdsInteger0..*The guidance group, potentially including multiple guidance lines
TimeScopeIdsTimeScope0..*


CropZone

AttributeTypeMultiplicityDescription
IdCompoundIdentifier1
TimeScopesTimeScope0..1
Descriptionstring1
FieldIDInteger1
CropIDInteger0..1
AreaNumericRepresentationValue1
BoundingRegionMultiPolygon0..1
BoundarySourceGpsSource1
NotesNote0..*
GuidanceGroupIdsInteger0..*
ContextItemsContextItem0..*

ContactInfo

AttributeTypeMultiplicityDescription
IdCompoundIdentifier1
AddressLine1String0..1
AddressLine2String0..1
PoBoxNumberString0..1
PostalCodeString0..1
CityString0..1
StateOrProvinceString0..1

20150820: Do state & province need to be separate? What do we do with a country like Colombia that has "departments", or a country like Japan that has "prefectures"? Maybe we need to move back to a single country subdivision attribute?

Tim Shearouse (Deactivated): agroXML includes both "State" and "Province". ISO combines them. I did some digging ... international registration systems I have built in the past (outside the ag world) always combined them into a single field. Japanese "prefectures" replaced an older system of "provinces", and are typically entered in the state/province field. I do not know about Colombian addresses.

CountryString0..1Free-form text
CountryCodeString0..1

2-character country code from ISO 3166-2 See /wiki/spaces/SPADE3/pages/71762209 for the codes.

ContactsContact0..*
LocationLocation0..1

20150903: Switched to using the Location class instead of point. This provides At some recent point we added GLN to location. This makes having a separate GLN in ContactInfo a moot point.

20150909: Removed GLN from Location, switching it to a ContextItem instead.

ContextItemsContextItem0..*20150909: Added for flexibility and to simplify use of GLNs.


Contact

AttributeTypeMultiplicityDescription
NumberString1
TypeContactTypeEnum1Phone, Mobile, Fax, Email


Location

AttributeTypeMultiplicityDescription
PositionPoint0..1
ContextItemsContextItem0..*20150909: Agreed to add this and collapse GLN into ContextItems
GpsSourceGpsSource0..1
ParentFacilityIdInteger0..1


Facility

AttributeTypeMultiplicityDescription
IdCompoundIdentifier1Reference ID 
CompanyIdInteger0..1ID of Company the Facility belongs to
DescriptionString0..1Name of the facility ("Big Grain Bin")
ContactInfoContactInfo0..1Note that ContactInfo contains a Location, which in turn contains a GLN
FacilityTypeFacilityTypeEnum0..1

20150909: Driven by a use case presented by Joe Tevis. We need to develop this list;

FacilityTypeEnumeratedValue0..1
ContextItemsContextItem0..*20150909: Added as agreed upon by group. (Deals flexibly with GLN and other regulatory info.)
ParentFacilityIdInteger0..1


FacilityTypeEnum [Not Implemented]

ItemDescriptionComment
Office
20150910 Simply an example
Grain bin
20150910 Simply an example
Facility
From AgXML's LocationType. For discussion
Farm
From AgXML's LocationType. For discussion
Field
From AgXML's LocationType. For discussion
Storage Location
From AgXML's LocationType. For discussion
Tank
From AgXML's LocationType. For discussion


Note how Destination is handled in AgXML:

  • A Destination essentially contains a sequence of LocationInformation elements.
  • Each LocationInformation object contains:
    • A LocationType equivalent to the FacilityType we're looking at.
    • A location Identifier
    • A location name
    • AN address. Note that CountyFIPS code is a ContextItem for us.

Cropzone use cases (in progress)


Crop
Spatial footprint
Time
Example use case
DifferentSameSameCan correspond to a tightly intercropped pair of crops or varieties, where it is not practical to separate them geographically.
DifferentSameDifferent

Crop rotation

Note that the timeframes do not have to be mutually excusive: for example, a cover crop can be sown (e.g., via an aerial applicator) before the preceding crop is harvested. it would correspond to a different crop zone because of our definition of cropzones as a spatial region where a given crop is being grown during a given time interval.

DifferentDifferentSameBlock pattern in a field grown with different horticultural crops in a single-crop (short) growing season.
DifferentDifferentDifferentBlock pattern in a field grown with different horticultural crops in a multiple-crop (long) growing season.
SameSameSameImprobable use case. Could be used to represent a landlord arrangement, where different landlords are allocated different fractions of the production of the whole field. (That case can be represented differently.)
SameSameDifferentMultiple horticultural crops per season in a warm climate.
SameDifferentSameDifferent management or traceability needs (e.g., different customers) require separate record-keeping. Can reflect a setting where parts of a field have different customers, or a blocked arrangement on a citrus grove.
SameDifferentDifferentSuccessive plantings of the same crop, but with different spatial footprints (e,g., due to different guidance patterns used during planting)