--- title: "body_segment_area" description: "Calculation of the cross-sectional area of an identified part of the body, usually identified in relation to points of surface anatomy." --- Calculation of the cross-sectional area of an identified part of the body, usually identified in relation to points of surface anatomy. **Purpose.** To record the calculation of the cross-sectional area of an identified part of the body, usually identified in relation to points of surface anatomy. ## Source | Model | Leg | Role | |---|---|---| | `openEHR-EHR-OBSERVATION.body_segment_area.v1` | openEHR | defines this table | ## Columns | Column | Type | Null | Description | Source | |---|---|---|---|---| | `id` | `uuid primary key` | no | Primary key. | — | | `form_id` | `uuid` → [`form`](/docs/tables/form) | no | The form this entry was recorded on. | — | | `form_block_id` | `uuid` | yes | The block within the form, when the entry is bound to one. | — | | `body_segment_name`
`body_segment_name_code`
`body_segment_name_system`
`body_segment_name_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Body segment name | `/data[at0001]/events[at0002]/data[at0003]/items[at0004]` | | `laterality`
`laterality_code`
`laterality_system`
`laterality_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Laterality | `/data[at0001]/events[at0002]/data[at0003]/items[at0005]` | | `area_magnitude`
`area_units` | quantity
`numeric`, `text` | yes | Area | `/data[at0001]/events[at0002]/data[at0003]/items[at0008]` | | `comment` | `text` | yes | Comment | `/data[at0001]/events[at0002]/data[at0003]/items[at0009]` | | `confounding_factors` | `text` | yes | Confounding factors | `/data[at0001]/events[at0002]/state[at0010]/items[at0011]` | | `body_position`
`body_position_code`
`body_position_system`
`body_position_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Body position | `/data[at0001]/events[at0002]/state[at0010]/items[at0031]` | | `measurement_method` | `text` | yes | Measurement method | `/protocol[at0014]/items[at0027]` | | `measurement_origin_endpoint`
`measurement_origin_endpoint_code`
`measurement_origin_endpoint_system`
`measurement_origin_endpoint_valueset_id` | coded text
`text`, `text`, `text`, `text` | yes | Measurement origin/endpoint | `/protocol[at0014]/items[at0029]` | ## Constraints ```sql check ((body_segment_name_code is null and body_segment_name_system is null and body_segment_name_valueset_id is null) or (body_segment_name is not null and body_segment_name_code is not null and body_segment_name_system is not null and body_segment_name_valueset_id is not null)) check ((laterality_code is null and laterality_system is null and laterality_valueset_id is null and laterality is null) or (laterality is not null and laterality_code is not null and laterality_system is not null and laterality_valueset_id is not null)) check ((area_magnitude is null and area_units is null) or (area_magnitude is not null and area_units is not null)) check (area_magnitude is null or (area_units = 'mm2' and area_magnitude >= 0) or (area_units = 'cm2' and area_magnitude >= 0) or (area_units = '[sin_i]' and area_magnitude >= 0)) check ((body_position_code is null and body_position_system is null and body_position_valueset_id is null) or (body_position is not null and body_position_code is not null and body_position_system is not null and body_position_valueset_id is not null)) check ((measurement_origin_endpoint_code is null and measurement_origin_endpoint_system is null and measurement_origin_endpoint_valueset_id is null) or (measurement_origin_endpoint is not null and measurement_origin_endpoint_code is not null and measurement_origin_endpoint_system is not null and measurement_origin_endpoint_valueset_id is not null)) ``` ## Unique - `form_block_id` ## References | Columns | Target | On delete | |---|---|---| | `form_id` | [`form`](/docs/tables/form) | cascade | | `form_id, form_block_id` | [`form_block`](/docs/tables/form_block) | cascade | | `body_segment_name_valueset_id, body_segment_name_code, body_segment_name_system, body_segment_name` | [`valueset_code`](/docs/tables/valueset_code) | restrict | | `laterality_valueset_id, laterality_code, laterality_system, laterality` | [`valueset_code`](/docs/tables/valueset_code) | restrict | | `body_position_valueset_id, body_position_code, body_position_system, body_position` | [`valueset_code`](/docs/tables/valueset_code) | restrict | | `measurement_origin_endpoint_valueset_id, measurement_origin_endpoint_code, measurement_origin_endpoint_system, measurement_origin_endpoint` | [`valueset_code`](/docs/tables/valueset_code) | restrict | ## Referenced by - [`body_segment_area_measuring_device`](/docs/tables/body_segment_area_measuring_device) via `body_segment_area_id` - [`body_segment_area_structured_origin_endpoint`](/docs/tables/body_segment_area_structured_origin_endpoint) via `body_segment_area_id` ## Indexes - `body_segment_area_form_id_idx` on `form_id` ## Child tables 2 tables hang off `body_segment_area`, one row per repetition. ### `body_segment_area_measuring_device` Child table — one row per repetition, deleted with its parent. | Column | Type | Null | Description | Source | |---|---|---|---|---| | `id` | `uuid primary key` | no | Primary key. | — | | `body_segment_area_id` | `uuid` → [`body_segment_area`](/docs/tables/body_segment_area) | no | — | — | | `position` | `integer` | no | Order of this row within its parent, from zero. | — | | `device_id` | `uuid` | no | Measuring device | `/protocol[at0014]/items[at0015]` | #### Unique - `body_segment_area_id, position` - `body_segment_area_id, device_id` #### References | Columns | Target | On delete | |---|---|---| | `body_segment_area_id` | [`body_segment_area`](/docs/tables/body_segment_area) | cascade | | `device_id` | [`device`](/docs/tables/device) | no action | #### Indexes - `body_segment_area_measuring_device_device_id_idx` on `device_id` ### `body_segment_area_structured_origin_endpoint` Child table — one row per repetition, deleted with its parent. | Column | Type | Null | Description | Source | |---|---|---|---|---| | `id` | `uuid primary key` | no | Primary key. | — | | `body_segment_area_id` | `uuid` → [`body_segment_area`](/docs/tables/body_segment_area) | no | — | — | | `position` | `integer` | no | Order of this row within its parent, from zero. | — | | `anatomical_location_id` | `uuid` | no | Structured origin/endpoint | `/protocol[at0014]/items[at0030]` | #### Unique - `body_segment_area_id, position` - `body_segment_area_id, anatomical_location_id` #### References | Columns | Target | On delete | |---|---|---| | `body_segment_area_id` | [`body_segment_area`](/docs/tables/body_segment_area) | cascade | | `anatomical_location_id` | [`anatomical_location`](/docs/tables/anatomical_location) | no action | #### Indexes - `body_segment_area_structured_origin_endpoint_anatomical__8be18a` on `anatomical_location_id` ## Value sets | Value set | Codes | |---|---| | `org.openehr::openEHR-EHR-OBSERVATION.body_segment_area.v1/body_position` | 3 | | `org.openehr::openEHR-EHR-OBSERVATION.body_segment_area.v1/body_segment_name` | 1 | | `org.openehr::openEHR-EHR-OBSERVATION.body_segment_area.v1/laterality` | 2 |