# Diagram Elements

This section describes the elements of the diagramming notation, including their shape/style and colour if applicable.

* [#concepts](#concepts "mention")
* [#concrete-values](#concrete-values "mention")
* [#attributes](#attributes "mention")
* [#attribute-groups](#attribute-groups "mention")
* [#conjunction](#conjunction "mention")
* [#relational-operators](#relational-operators "mention")
* [#arrow](#arrow "mention")
* [#line](#line "mention")
* [#names-and-element-sizes](#names-and-element-sizes "mention")
* [#colour](#colour "mention")
* [#gradients-blends-and-opacity](#gradients-blends-and-opacity "mention")
* [#fonts](#fonts "mention")

***

## Concepts

Concepts are represented by a rectangle, containing the name of the concept as shown below:

<figure><img src="/files/pHQHZOWcAuWdcO3RDBs1" alt=""><figcaption><p>The name used must be the concept's fully specified name or a synonym.</p></figcaption></figure>

Optionally the definition status of a concept may be represented. Concepts that are fully defined may be represented using a double line border as shown below:

<figure><img src="/files/tXRMiKge4fVRJ9Ocusrs" alt=""><figcaption><p>A rectangle with a single border is assumed to be primitive unless explicitly noted otherwise or it is clear in context (e.g., diagramming during a whiteboard discussion).</p></figcaption></figure>

***

## Concrete Values

A concrete value is represented by a rectangle with diagonal lines in the corners. The value itself is added to the rectangle as text, with numeric values (i.e. integers and decimals) preceded by a '#', string values enclosed in double quotes, and boolean values represented as "true" or "false" with no adornment.

## Number

<figure><img src="/files/HhH3sd5BXEqtrk0Bz6UQ" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/vlViASIsVnbWxeFuX5Bh" alt=""><figcaption></figcaption></figure>

## String

<figure><img src="/files/DAIc1S5OUoguM7baVLoY" alt=""><figcaption></figcaption></figure>

***

## Attributes

Relationships, or attributes, are represented using a rectangle with rounded ends and a double line border, as shown below:

<figure><img src="/files/QJDKN1KHC07FyjdWGfqP" alt=""><figcaption><p>A rounded rectangle with a single border is permitted in informal contexts (e.g., diagramming during a whiteboard discussion).</p></figcaption></figure>

### "Is A" Arrows

"Is a" (subtype) relationships are highlighted by using an open-headed arrow as shown below:

<figure><img src="/files/9xpvjXy40NNXsSTkJhYt" alt=""><figcaption><p>The rounded rectangle specified in section 4.2 is omitted when representing "Is a" relationships, and the arrow head always points to the parent (super-type) concept.</p></figcaption></figure>

***

## Attribute Groups

Attribute groups are represented with a circle:

<figure><img src="/files/2ZeQfeU8VlTRE6g9Q154" alt=""><figcaption></figcaption></figure>

***

## Conjunction

A conjunction is represented with a black "dot" (black filled small circle). It is only necessary when two or more attributes are being joined in a diagram. It is optional when attaching a single attribute.

<figure><img src="/files/K9NbjUa5jOmBxkmCf98m" alt=""><figcaption></figcaption></figure>

***

## Relational Operators

Relational operators may be represented between expressions using the notation shown in the table below:

| Meaning           | Equivalent                                                                                          | Subsumed by                                                                                         | Subsumes                                                                                            |
| ----------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| Symbol            | <div><figure><img src="/files/hCVk3x0CMqf7qUPDLX2n" alt=""><figcaption></figcaption></figure></div> | <div><figure><img src="/files/BCp6h6uBn6vtJy5SptAe" alt=""><figcaption></figcaption></figure></div> | <div><figure><img src="/files/AbCXWavYwpFTwUAFzUEN" alt=""><figcaption></figcaption></figure></div> |
| Character         | **≣**                                                                                               | **⊑**                                                                                               | **⊒**                                                                                               |
| Unicode Character | <p>Unicode: U+2263</p><p>UTF-8: E2 89 A3</p>                                                        | <p>Unicode: U+2291</p><p>UTF-8: E2 8A 91</p>                                                        | <p>Unicode: U+2292</p><p>UTF-8: E2 8A 92</p>                                                        |

> The characters **≣, ⊑** and **⊒** are only present in fonts that support the full set of Unicode characters. For example users of Microsoft tools will find these characters in the font called "Arial Unicode MS".

***

## Arrow

An arrow as shown below is used to connect related elements where the connection is unidirectional:

<figure><img src="/files/zVTpAEXOIN5mghWoiMGK" alt=""><figcaption><p>Connecting arrows always have an arrow head at one end, and therefore have an explicit direction from one element to another in the direction the diagram should be read.</p></figcaption></figure>

***

## Line

Similar to the Arrow above, the Line shown below is used to connect elements in the diagram where the connection is bi-directional.

<figure><img src="/files/8LAHV67cKjuruJvWfZSD" alt=""><figcaption></figcaption></figure>

***

## Names and Element Sizes

Each element contains a name as specified. The diagram elements may be resized and/or the text of the name given to the element may be wrapped as needed to achieve readability. When resizing it is highly recommended that concept and attribute elements remain rectangular and wider than they are tall where possible.

Names chosen must be fully specified names or (usually preferred) synonyms as stated, however a single diagram must consistently use either fully specified names or synonyms for all diagram elements.

It is highly recommended that an element's name be preceded by its concept identifier. This is to eliminate any potential ambiguity.

***

## Colour

Diagrams may be produced in black and white, or colour may be added to aid readability.

In order to provide consistency the following sections specify the colours to be used for each type of element. Specified colours are websafe, do not affect black and white printing and are generally perceptible by most common colour blindness.

### Concepts

Primitive concepts are coloured with RGB 99CCFF (decimal 153, 204, 255) as shown below.

<figure><img src="/files/wLcwhOgsijCOSqglPYqa" alt=""><figcaption><p>Defined concepts are coloured with RGB CCCCFF (decimal 204, 204, 255) as shown below.</p></figcaption></figure>

<figure><img src="/files/sElVxedLN9XXglssStyN" alt=""><figcaption></figcaption></figure>

### Attributes

Attributes are coloured with RGB FFFFCC (decimal 255, 255, 204) as shown below.

<figure><img src="/files/1SyLRssDEPJhv67fsYyu" alt=""><figcaption></figcaption></figure>

### Concrete Values

Concrete values are coloured with RGB A5E0B6 (decimal 165, 224, 182) as shown below.

### Attribute groups

Attribute groups are not coloured, and are always presented as a circle with a white interior.

<figure><img src="/files/CZQKZehBjcWr1Y7mBTQC" alt=""><figcaption></figcaption></figure>

### Conjunctions

Conjunctions are not coloured, and are always presented as a black dot as shown in [#conjunction](#conjunction "mention").

### Relational Operators

Relational operators are not coloured and are always represented as shown in [#relational-operators](#relational-operators "mention")

***

## Gradients, Blends and Opacity

Graded shading provided by modern diagramming tools is NOT permitted, as they

* Can vary substantially in style
* May reduce readability and consistency.

For example, the following are not acceptable.

<figure><img src="/files/xG6C8J0gAAj4mYxKBTQT" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/l8GOhdjfRO4xX9x01hTv" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/5zX5RLatoLnn87rqS1vw" alt=""><figcaption></figcaption></figure>

***

## Fonts

For consistency, all text within diagram elements is to use a sans-serif font such as "Helvetica[^1]" and font size is to be consistent across all elements within a single diagram.

Authors are also strongly encouraged to keep the apparent size of the text in the final image close to that of the surrounding text (usually 8-12 points).

***

<a href="https://docs.google.com/forms/d/e/1FAIpQLScTmbZIf0UEQwYDkY27EEWBkaiYkHSbR0_9DmFrMLXoQLyL7Q/viewform?usp=pp_url&#x26;entry.1767247133=SNOMED+Diagramming+Specification&#x26;entry.670899847=Diagram%20Elements" class="button primary">Provide Feedback</a>

[^1]: See <http://en.wikipedia.org/wiki/Helvetica>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.snomed.org/snomed-ct-specifications/snomed-ct-diagramming-specification/4-diagram-elements.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
