{
  "resourceType": "StructureDefinition",
  "url": "http://rnds.saude.gov.br/fhir/r4/StructureDefinition/rnds-address-1.0",
  "name": "RNDSAddress",
  "status": "draft",
  "fhirVersion": "4.0.0",
  "kind": "complex-type",
  "abstract": false,
  "type": "Address",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Address",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Address",
        "path": "Address",
        "short": "Um endereço para o indivíduo",
        "definition": "Um endereço para o indivíduo",
        "comment": "O paciente pode ter vários endereços com diferentes usos ou períodos aplicáveis."
      },
      {
        "id": "Address.extension",
        "path": "Address.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Address.extension:geolocation",
        "path": "Address.extension",
        "sliceName": "geolocation",
        "short": "Geolocalização do endereço",
        "definition": "Geolocalização do endereço, latitude e longitude no padrão WGS84",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/geolocation"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Address.extension:geolocation.extension:latitude",
        "path": "Address.extension.extension",
        "sliceName": "latitude",
        "short": "Latitude no padrão WGS84",
        "definition": "Latitude no padrão WGS84",
        "mustSupport": true
      },
      {
        "id": "Address.extension:geolocation.extension:latitude.value[x]",
        "path": "Address.extension.extension.value[x]",
        "type": [
          {
            "code": "decimal"
          }
        ]
      },
      {
        "id": "Address.extension:geolocation.extension:latitude.value[x]:valueDecimal",
        "path": "Address.extension.extension.valueDecimal",
        "sliceName": "valueDecimal"
      },
      {
        "id": "Address.extension:geolocation.extension:longitude",
        "path": "Address.extension.extension",
        "sliceName": "longitude",
        "short": "Longitude no padrão WGS84",
        "definition": "Longitude no padrão WGS84",
        "mustSupport": true
      },
      {
        "id": "Address.extension:geolocation.extension:longitude.value[x]",
        "path": "Address.extension.extension.value[x]",
        "type": [
          {
            "code": "decimal"
          }
        ]
      },
      {
        "id": "Address.extension:geolocation.extension:longitude.value[x]:valueDecimal",
        "path": "Address.extension.extension.valueDecimal",
        "sliceName": "valueDecimal"
      },
      {
        "id": "Address.use",
        "path": "Address.use",
        "short": "home | work | temp | old | billing - propósito desse endereço",
        "definition": "O objetivo deste endereço.",
        "comment": "Os aplicativos podem assumir que um endereço é atual, a menos que ele diga explicitamente que é temporário ou antigo.",
        "requirements": "Permite que um endereço apropriado seja escolhido em uma lista de muitos.",
        "meaningWhenMissing": "Se a informação estiver faltando, significa que essa informação não está registrada."
      },
      {
        "id": "Address.type",
        "path": "Address.type",
        "definition": "Distingue entre endereços físicos (aqueles que você pode visitar) e endereços de correspondência (por exemplo, caixas postais e endereços de atendimento). A maioria dos endereços são ambos.",
        "meaningWhenMissing": "Se a informação estiver faltando, significa que essa informação não está registrada."
      },
      {
        "id": "Address.text",
        "path": "Address.text",
        "short": "Representação de texto do endereço",
        "definition": "Especifica o endereço completo como deveria ser exibido, por exemplo, em uma etiqueta postal. Isso pode ser fornecido em vez de ou tão bem quanto as partes específicas.",
        "comment": "Pode fornecer uma representação de texto e partes. Os aplicativos que atualizam um endereço DEVERÃO garantir que, quando o texto e as partes estiverem presentes, nenhum conteúdo seja incluído no texto que não seja encontrado em uma peça."
      },
      {
        "id": "Address.line",
        "path": "Address.line",
        "short": "Tipo de logradouro, nome da rua, número, complemento, etc.",
        "definition": "Este componente contém tipo de logradouro, nome da rua, número, complemento e informações de endereço semelhantes.",
        "mustSupport": true
      },
      {
        "id": "Address.line.extension",
        "path": "Address.line.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Address.line.extension:addressLine",
        "path": "Address.line.extension",
        "sliceName": "addressLine",
        "definition": "Logradouro, deve ser sempre informada com a informação principal de logradouro, rua, avenida, quadra, etc.",
        "alias": [
          "logradouro"
        ],
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetAddressLine"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Address.line.extension:addressLine.value[x]",
        "path": "Address.line.extension.value[x]",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "Address.line.extension:addressLine.value[x]:valueString",
        "path": "Address.line.extension.valueString",
        "sliceName": "valueString"
      },
      {
        "id": "Address.line.extension:houseNumber",
        "path": "Address.line.extension",
        "sliceName": "houseNumber",
        "short": "Número da casa, apt, etc.",
        "definition": "Número da casa, apt, etc.",
        "alias": [
          "numero"
        ],
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Address.line.extension:houseNumber.value[x]",
        "path": "Address.line.extension.value[x]",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "Address.line.extension:houseNumber.value[x]:valueString",
        "path": "Address.line.extension.valueString",
        "sliceName": "valueString"
      },
      {
        "id": "Address.line.extension:additionalLocator",
        "path": "Address.line.extension",
        "sliceName": "additionalLocator",
        "definition": "Informação adicional sobre o endereço, complemento.",
        "alias": [
          "complemento"
        ],
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-additionalLocator"
            ]
          }
        ]
      },
      {
        "id": "Address.line.extension:additionalLocator.value[x]",
        "path": "Address.line.extension.value[x]",
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "Address.line.extension:additionalLocator.value[x]:valueString",
        "path": "Address.line.extension.valueString",
        "sliceName": "valueString"
      },
      {
        "id": "Address.city",
        "path": "Address.city",
        "short": "Nome da cidade do endereço",
        "definition": "Nome da cidade do endereço",
        "mustSupport": true
      },
      {
        "id": "Address.city.extension",
        "path": "Address.city.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Address.city.extension:cityCode",
        "path": "Address.city.extension",
        "sliceName": "cityCode",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://rnds.saude.gov.br/fhir/r4/StructureDefinition/rnds-city-1.0"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Address.district",
        "path": "Address.district",
        "short": "Bairro",
        "definition": "Bairro definido para o endereço, no sentido de região composta de várias ruas e avenidas, dentro de um mesmo município.",
        "comment": "Bairro definido para o endereço, no sentido de região composta de várias ruas e avenidas, dentro de um mesmo município.",
        "mustSupport": true
      },
      {
        "id": "Address.state",
        "path": "Address.state",
        "short": "Nome do estado",
        "definition": "Sub-unidade de um país com soberania limitada em um país federalmente organizado. Deve ser representado como código de duas letras, conforme ISO 3166-2, utilizando somente a segunda parte do código. Ex.: código ISO 3166-2, em subconjunto pra o Brasil (BR), identificando o estado do Acre (BR-AC), será aqui representado somente pela segunda parte, após o hífen (AC). O mesmo vale para outros subconjuntos, por exemplo ISO 3166-2:US, código do estado do Alaska nos Estados Unidos, utiliza o código (US-AK), será aqui representado por (AK).",
        "example": [
          {
            "label": "Códido da UF Distrito Federal",
            "valueString": "DF"
          }
        ],
        "maxLength": 2,
        "mustSupport": true
      },
      {
        "id": "Address.postalCode",
        "path": "Address.postalCode",
        "short": "Código postal",
        "definition": "Um código postal que designa uma região definida pelo serviço postal. Deve utilizar o sistema de codificação do país cujo endereço representa. No Brasil, utiliza-se o sistema de endereçamento postal ou Código de Endereçamento Postal (CEP), conforme definição pela Empresa Brasileira de Correios e Telégrafos do Brasil. É composto de cinco dígitos - hífen - 3 dígitos (99999-999). Para sua representação lógica neste campo, despreze o hífen (99999999).",
        "patternString": "^[0-9]{5-15}$",
        "example": [
          {
            "label": "Código postal para endereço brasileiro (CEP)",
            "valueString": "76240780"
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Address.country",
        "path": "Address.country",
        "short": "Representação do país do endereço",
        "definition": "Representação do país do endereço",
        "mustSupport": true
      },
      {
        "id": "Address.country.extension",
        "path": "Address.country.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "open"
        }
      },
      {
        "id": "Address.country.extension:countryCode",
        "path": "Address.country.extension",
        "sliceName": "countryCode",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://rnds.saude.gov.br/fhir/r4/StructureDefinition/rnds-country-1.0"
            ]
          }
        ],
        "mustSupport": true
      },
      {
        "id": "Address.period",
        "path": "Address.period",
        "short": "Período de tempo em que o endereço estava / está em uso",
        "definition": "Período de tempo em que o endereço estava / está em uso."
      },
      {
        "id": "Address.period.start",
        "path": "Address.period.start",
        "short": "Hora de início com limite inclusivo",
        "definition": "O começo do período. O limite é inclusivo.",
        "comment": "Se o elemento baixo estiver faltando, o significado é que o limite inferior não é conhecido."
      },
      {
        "id": "Address.period.end",
        "path": "Address.period.end",
        "short": "Hora de término com limite inclusivo, se não estiver em andamento",
        "definition": "O final do período. Se o final do período estiver faltando, significa que nenhum fim foi conhecido ou planejado no momento em que a instância foi criada. O início pode estar no passado e a data final no futuro, o que significa que o período é esperado / planejado para terminar nesse momento.",
        "comment": "O valor alto inclui qualquer data / hora correspondente. Ou seja, 2012-02-03T10: 00: 00 está em um período que tem um valor final de 2012-02-03."
      }
    ]
  }
}