{
  "id": "tradle.Residence",
  "type": "tradle.Model",
  "title": "Residence",
  "subClassOf": "tradle.Form",
  "properties": {
    "streetAddress": {
      "type": "string",
      "sample": "address.streetAddress"
    },
    "city": {
      "type": "string",
      "sample": "address.city"
    },
    "postalCode": {
      "type": "string",
      "sample": "address.zipCode"
    },
    "region": {
      "type": "string",
      "sample": "address.state"
    },
    "country": {
      "type": "object",
      "ref": "tradle.Country"
    },
    "residenceType": {
      "type": "object",
      "title": "Residence Type",
      "displayName": true,
      "ref": "tradle.ResidenceType"
    },
    "formattedAddress": {
      "type": "string",
      "displayAs": "{2}, {3}, {4}",
      "group": [
        "residenceType",
        "streetAddress",
        "city",
        "postalCode"
      ],
      "title": "Address",
      "readOnly": true
    },
    "address_group": {
      "type": "string",
      "title": "Address",
      "list": [
        "streetAddress",
        "city",
        "postalCode",
        "country"
      ]
    }
  },
  "required": [
    "residenceType",
    "city",
    "streetAddress",
    "postalCode"
  ],
  "editCols": [
    "residenceType",
    "address_group"
  ],
  "viewCols": [
    "residenceType",
    "formattedAddress"
  ]
}
