/// <summary>
        /// Initializes a new instance of the <see cref="Points" /> class.
        /// </summary>
        /// <param name="objectId">objectId.</param>
        /// <param name="country">country (required).</param>
        /// <param name="geometry">geometry (required).</param>
        public Points(string objectId = default(string), string country = default(string), GeoPos geometry = default(GeoPos))
        {
            // to ensure "country" is required (not null)
            if (country == null)
            {
                throw new InvalidDataException("country is a required property for Points and cannot be null");
            }
            else
            {
                this.Country = country;
            }

            // to ensure "geometry" is required (not null)
            if (geometry == null)
            {
                throw new InvalidDataException("geometry is a required property for Points and cannot be null");
            }
            else
            {
                this.Geometry = geometry;
            }

            this.ObjectId = objectId;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="Candidate" /> class.
 /// </summary>
 /// <param name="precisionLevel">precisionLevel.</param>
 /// <param name="formattedStreetAddress">formattedStreetAddress.</param>
 /// <param name="formattedLocationAddress">formattedLocationAddress.</param>
 /// <param name="identifier">identifier.</param>
 /// <param name="precisionCode">precisionCode.</param>
 /// <param name="sourceDictionary">sourceDictionary.</param>
 /// <param name="matching">matching.</param>
 /// <param name="geometry">geometry.</param>
 /// <param name="address">address.</param>
 /// <param name="ranges">ranges.</param>
 public Candidate(int precisionLevel = default(int), string formattedStreetAddress = default(string), string formattedLocationAddress = default(string), string identifier = default(string), string precisionCode = default(string), string sourceDictionary = default(string), FieldsMatching matching = default(FieldsMatching), GeoPos geometry = default(GeoPos), GeocodeAddress address = default(GeocodeAddress), List <CandidateRange> ranges = default(List <CandidateRange>))
 {
     this.PrecisionLevel           = precisionLevel;
     this.FormattedStreetAddress   = formattedStreetAddress;
     this.FormattedLocationAddress = formattedLocationAddress;
     this.Identifier       = identifier;
     this.PrecisionCode    = precisionCode;
     this.SourceDictionary = sourceDictionary;
     this.Matching         = matching;
     this.Geometry         = geometry;
     this.Address          = address;
     this.Ranges           = ranges;
 }