> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.emtelligent.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.emtelligent.com/_mcp/server.

# JSON Result Format

NLP API JSON result specification, version 2.37.0.

## Example

**`One entity from a result for: The 2.4 cm melanoma on his left shin has become larger since 2 months ago.`**

```json title="One entity from a result for: The 2.4 cm melanoma on his left shin has become larger since 2 months ago."
{
  "format": "emtellipro-json-2",
  "version": "2.37.0",
  "engine-version": "auto-processor-19.16.0",
  "documents": [
    {
      "id": "doc-1",
      "processing_status": "success",
      "text": "The 2.4 cm melanoma on his left shin has become larger since 2 months ago.",
      "entities": {
        "found": [
          {
            "label": "E0",
            "spans": [
              {
                "start": 11,
                "end": 19
              }
            ],
            "section_name": "INTRO",
            "attributes": {
              "heading_status": "outside_heading",
              "polarity": "asserted",
              "uncertainty": "certain"
            },
            "concept_links": [
              "Csnomed0"
            ],
            "locations": [
              "S1",
              "SEC-0"
            ],
            "entity_type": {
              "snomed_icd10_cm": "Neoplastic Process",
              "snomed": "disorder",
              "umls": "Neoplastic Process",
              "medcin": "diagnosis"
            },
            "text": [
              "melanoma"
            ]
          }
        ]
      },
      "concepts": {
        "snomed": [
          {
            "label": "Csnomed0",
            "concept_id": "372244006",
            "description": "Malignant melanoma (disorder)"
          }
        ]
      },
      "relations": {
        "experiencers": [
          {
            "label": "REX0",
            "attributes": {
              "confidence": null,
              "polarity": "asserted"
            },
            "args": {
              "experiencer": {
                "ref": "Epatient",
                "text": [
                  "patient"
                ]
              },
              "experienced": {
                "ref": "E0",
                "text": [
                  "melanoma"
                ]
              }
            },
            "concept_links": []
          }
        ]
      },
      "locations": {
        "sentences": [
          {
            "label": "S1",
            "spans": [
              {
                "start": 0,
                "end": 74
              }
            ],
            "sections": [
              "SEC-0"
            ],
            "text": [
              "The 2.4 cm melanoma on his left shin has become larger since 2 months ago."
            ]
          }
        ]
      }
    }
  ]
}
```

Download this example

## Result

Type: `object`.

| Property         | Type                             | Required | Description                                                                            |
| ---------------- | -------------------------------- | -------- | -------------------------------------------------------------------------------------- |
| `format`         | enum                             | yes      | The name of the result schema specified by this document. One of: `emtellipro-json-2`. |
| `version`        | `string`                         | no       | The version of the schema used for this result.                                        |
| `engine-version` | `string`                         | no       | The engine version used to produce this result.                                        |
| `documents`      | array of [`Document`](#document) | yes      | An array where each element is the per-document result output.                         |

## AnatomicSiteRelation

A relation identifying the anatomic site of various clinical entities such as disorders, findings, morphological abnormalities, observable entities, etc.

Extends [`Relation`](#relation).

| Property | Type     | Required | Description                              |
| -------- | -------- | -------- | ---------------------------------------- |
| `args`   | `object` | yes      | Arguments for the anatomicsite relation. |

## AssumedEntity

Entity assumed from concept.

Extends [`Entity`](#entity).

| Property | Type     | Required | Description                                                    |
| -------- | -------- | -------- | -------------------------------------------------------------- |
| `value`  | `string` | yes      | The value representing this entity. Can be: - patient - family |

## Concept

Concept in an ontology that has been linked to an entity in the input.

| Property      | Type                            | Required | Description                                        |
| ------------- | ------------------------------- | -------- | -------------------------------------------------- |
| `label`       | [`ConceptLabel`](#conceptlabel) | yes      | Label for this concept.                            |
| `concept_id`  | `string`                        | yes      | The ID of this concept in the ontology.            |
| `description` | `string`                        | yes      | The description of this concept from the ontology. |

## ConceptConfidences

Confidence scores for linking an entity to concepts. Each key is concept label which is also in 'concept_links' for the entity. Confidences may not be available for all concepts linked to an entity.

Type: `object`.

## ConceptLabel

Entity label, unique within the document.

Type: `string`.

## Document

The result from NLP API corresponding to one of the input documents.

| Property            | Type                                        | Required | Description                                                                                                                                                                                                                       |
| ------------------- | ------------------------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                | [`DocumentID`](#documentid)                 | yes      | Identifier for the document, indicating which input document it corresponds to.                                                                                                                                                   |
| `attributes`        | [`DocumentAttributes`](#documentattributes) | yes      | Attributes for this document specifying document level information.                                                                                                                                                               |
| `processing_status` | [`ProcessingStatus`](#processingstatus)     | yes      | Status of processing of this document.                                                                                                                                                                                            |
| `ontology_versions` | `object`                                    | yes      | Version information for the ontologies used to process this document.                                                                                                                                                             |
| `text`              | `string`                                    | no       | Text of the whole report. This field is present if the input document did not include the plain text itself, when a processing feature enables non-recoverable text changes, or or when the 'text' processing feature is enabled. |
| `entities`          | `object`                                    | yes      | Named Entities in this document. The entities are typically associated with spans in the text but some relations introduce assumed entities.                                                                                      |
| `concepts`          | `object`                                    | yes      | Concepts in this document.                                                                                                                                                                                                        |
| `relations`         | `object`                                    | yes      | Relations between entities found in this document.                                                                                                                                                                                |
| `locations`         | `object`                                    | yes      | Locations in text in this document.                                                                                                                                                                                               |

## DocumentAttribute

Attribute describing a document.

| Property | Type  | Required | Description                                                                                                                                                                    |
| -------- | ----- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `method` | enum  | yes      | The method for detection of a document attribute: 'manual' if it was set explicitly in input, and 'automatic' if it was detected by the server. One of: `manual`, `automatic`. |
| `value`  | `any` | yes      | Value of this attribute.                                                                                                                                                       |

## DocumentAttributes

Attributes describing a document, with each property being one attribute keyed by name.

| Property      | Type                                                  | Required | Description |
| ------------- | ----------------------------------------------------- | -------- | ----------- |
| `category`    | [`DocumentStringAttribute`](#documentstringattribute) | no       |             |
| `subcategory` | [`DocumentStringAttribute`](#documentstringattribute) | no       |             |

## DocumentID

Identifier for a document. Must be unique within each submission, and will indicate which result document corresponds to which input document.

Type: `string`.

## DocumentStringAttribute

Extends [`DocumentAttribute`](#documentattribute).

| Property | Type     | Required | Description |
| -------- | -------- | -------- | ----------- |
| `value`  | `string` | yes      |             |

## Entity

A named entity.

| Property | Type                          | Required | Description            |
| -------- | ----------------------------- | -------- | ---------------------- |
| `label`  | [`EntityLabel`](#entitylabel) | yes      | Label for this entity. |

## EntityAttributes

Attributes describing a entity, with each property being one attribute keyed by name.

| Property           | Type                                | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------ | ----------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `polarity`         | [`Polarity`](#polarity)             | no       | Polarity of this entity. Present if the 'entity-polarity' feature is enabled.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `uncertainty`      | [`Uncertainty`](#uncertainty)       | no       | Uncertainty of this entity. Present if the 'entity-uncertainty' feature is enabled.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `question_status`  | [`QuestionStatus`](#questionstatus) | no       | Question status of this entity. Present if the 'entity-question-status' feature is enabled.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `guidance`         | [`Guidance`](#guidance)             | no       | Captures whether this entity is part of a guidance statement, where someone is suggesting that someone else do something. Say a caregiver writes 'If the patient experiences abdominal pain, she should return to the ER.' In this case, 'abdominal pain' is not something the patient currently has, but is part of a guidance statement, and thus the value of this attribute for 'abdominal pain' would be 'is_guidance'. If an entity is not part of a guidance statement, it is assigned a value of 'not_guidance'. Present if the 'entity-guidance' feature is enabled. |
| `measurement_unit` | `null` or array of `string`         | no       | The measurement unit that is heuristically extracted out of the measurement entity. The unit string is not normalized to a concept. Present for measurement entities if the 'entity-measurement-unit' feature is enabled. When a measurement entity is missing a unit of measurement, the value will be `null`.                                                                                                                                                                                                                                                               |
| `known_ambiguity`  | enum                                | no       | The ambiguity status of the entity is annotated by an expert to have the value ambiguous if the entity can potentially refer to many different medical concepts; the value unambiguous if the entity refers to a single medical concept; otherwise the ambiguity status is unknown. Present if the 'entity-known-ambiguity' feature is enabled. One of: `ambiguous`, `unambiguous`, `unknown`.                                                                                                                                                                                |
| `heading_status`   | enum                                | yes      | Indicates if the entity is inside of or outside of a (section) heading. One of: `inside_heading`, `outside_heading`.                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `factuality`       | `null` or enum                      | no       | The factual status of the entity mention. Non-null only for entities with snomed entity type and where it was possible to find factuality.                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `experiencer`      | `null` or `string`                  | no       | The 'experiencer' of this entity mention, eg 'patient', 'father', 'mother'. Non-null only for entities with snomed entity type and where it was possible to find experiencer.                                                                                                                                                                                                                                                                                                                                                                                                 |

## EntityLabel

Entity label, unique within the document.

Type: `string`.

## EntityType

Corresponds to the NER category according to different sources. Each field represents the type according to one source.

| Property          | Type     | Required | Description |
| ----------------- | -------- | -------- | ----------- |
| `emtelligent`     | `string` | no       |             |
| `snomed`          | `string` | no       |             |
| `rxnorm`          | `string` | no       |             |
| `radlex`          | `string` | no       |             |
| `medcin`          | `string` | no       |             |
| `umls`            | `string` | no       |             |
| `umls_nci`        | `string` | no       |             |
| `umls_hgnc`       | `string` | no       |             |
| `umls_loinc`      | `string` | no       |             |
| `snomed_icd10`    | `string` | no       |             |
| `snomed_icd10_cm` | `string` | no       |             |
| `rad_playbook`    | `string` | no       |             |

## ExperiencerRelation

A relation indicating that an entity (could be assumed) is the experiencer of a medical named entity.

Extends [`Relation`](#relation).

| Property     | Type     | Required | Description                             |
| ------------ | -------- | -------- | --------------------------------------- |
| `attributes` | `object` | yes      |                                         |
| `args`       | `object` | yes      | Arguments for the experiencer relation. |

## FollowupRelation

A relation indicating that a follow-up was requested for a certain procedure in an optional timeframe.

Extends [`Relation`](#relation).

| Property     | Type     | Required | Description                           |
| ------------ | -------- | -------- | ------------------------------------- |
| `attributes` | `object` | yes      |                                       |
| `args`       | `object` | yes      | Arguments for the follow-up relation. |

## FoundEntity

Entity identified from input that corresponds to text span(s).

Extends [`Entity`](#entity).

| Property              | Type                                        | Required | Description                                                                                                                                                                                                                                                                                                                                 |
| --------------------- | ------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `entity_type`         | [`EntityType`](#entitytype)                 | yes      | Type information for this entity.                                                                                                                                                                                                                                                                                                           |
| `attributes`          | [`EntityAttributes`](#entityattributes)     | yes      |                                                                                                                                                                                                                                                                                                                                             |
| `concept_links`       | array of [`ConceptLabel`](#conceptlabel)    | yes      | List of concepts that match this entity. Can be empty in cases where the entity type of a span of text could be determined but the link to an existing concept in an ontology could not be accomplished, which is either due to a missing synonym for a concept or because the concept does not exist in the chosen ontology or ontologies. |
| `concept_confidences` | [`ConceptConfidences`](#conceptconfidences) | no       | Confidence scores for linking this entity to concepts. Present if the 'entity-concept-link-confidence' is enabled.                                                                                                                                                                                                                          |
| `locations`           | array of [`LocationLabel`](#locationlabel)  | yes      | List of text locations that contain this entity.                                                                                                                                                                                                                                                                                            |
| `section_name`        | [`SectionName`](#sectionname)               | yes      | Name of the document section that this entity was found in.                                                                                                                                                                                                                                                                                 |
| `spans`               | array of [`Span`](#span)                    | yes      | Spans of input text that represent this entity.                                                                                                                                                                                                                                                                                             |
| `text`                | array of `string`                           | no       | Parts of input text corresponding to this entity (matches spans). Present when the 'text' feature is enabled.                                                                                                                                                                                                                               |

## Guidance

Specifies if an entity is part of a guidance statement.

Type: `string`. One of: `is_guidance`, `not_guidance`.

## HeadingLocation

A location indicating a heading in a document.

Extends [`Location`](#location).

| Property  | Type                                        | Required | Description                                                                                     |
| --------- | ------------------------------------------- | -------- | ----------------------------------------------------------------------------------------------- |
| `spans`   | array of [`Span`](#span)                    | yes      | The spans into the input text that make up this location.                                       |
| `text`    | array of `string`                           | no       | The parts of input text corresponding to the spans. Present when the 'text' feature is enabled. |
| `section` | `null` or [`LocationLabel`](#locationlabel) | yes      | The section that this heading is for.                                                           |

## ImageLinkRelation

A relation indicating a reference to an image or image slice, and to findings in that image. There could be multiple images mentioned in this relation and multiple findings associated with one or more images and as result both these arguments are arrays.

Extends [`Relation`](#relation).

| Property     | Type     | Required | Description                           |
| ------------ | -------- | -------- | ------------------------------------- |
| `attributes` | `object` | no       |                                       |
| `args`       | `object` | no       | Arguments for the imagelink relation. |

## Location

A part of the input text.

| Property | Type                              | Required | Description                                                         |
| -------- | --------------------------------- | -------- | ------------------------------------------------------------------- |
| `label`  | [`LocationLabel`](#locationlabel) | yes      | Identifier for this location, unique within the submission results. |

## LocationLabel

Identifier for a location in the document.

Type: `string`.

## MeasurementRelation

A relation indicating a measurement of morphological abnormalities or anatomical sites.

Extends [`Relation`](#relation).

| Property     | Type     | Required | Description                             |
| ------------ | -------- | -------- | --------------------------------------- |
| `attributes` | `object` | no       |                                         |
| `args`       | `object` | no       | Arguments for the measurement relation. |

## MeasurementUnit

Unit for a measurement.

Type: `string`.

## MedcinConcept

Concept type for Medcin.

Extends [`Concept`](#concept).

| Property | Type | Required | Description                                                                                                                                                                       |
| -------- | ---- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `result` | enum | yes      | Medcin-specific polarity classification with three states -- positive (abnormal), negative (normal), and unspecified (un-entered). One of: `unspecified`, `positive`, `negative`. |

## MedicationRelation

A relation capturing the various pieces of information associated with a medication prescription.

Extends [`Relation`](#relation).

| Property     | Type                                                                                                                              | Required | Description |
| ------------ | --------------------------------------------------------------------------------------------------------------------------------- | -------- | ----------- |
| `attributes` | `object`                                                                                                                          | yes      |             |
| `args`       | `object` and `object` or `object` or `object` or `object` or `object` or `object` or `object` or `object` or `object` or `object` | yes      |             |

## OntologyVersionInfo

Version information for one ontology. May have various extra fields depending on the available information.

| Property          | Type     | Required | Description                                                   |
| ----------------- | -------- | -------- | ------------------------------------------------------------- |
| `release_version` | `string` | yes      | The version string from the official release of the ontology. |

## PageLocation

A location indicating a page in a document, from input which has page information.

Extends [`Location`](#location).

| Property     | Type                     | Required | Description                                                                                  |
| ------------ | ------------------------ | -------- | -------------------------------------------------------------------------------------------- |
| `spans`      | array of [`Span`](#span) | yes      | The spans into the input text that make up this location.                                    |
| `text`       | array of `string`        | no       | The parts input text corresponding to the spans. Present when the 'text' feature is enabled. |
| `page_index` | `integer`                | yes      | This page's index in the page order.                                                         |

## Polarity

Specifies if the entity is within the scope of negation. An entity can either be asserted or negated.

Type: `string`. One of: `asserted`, `negated`.

## ProcessingStatus

Status of processing in the engine: could be either success or error. In the case of error, you should check the report and if everything matches the input requirement (UTF8 being the most salient) you should contact Emtelligent.

Type: `string`. One of: `success`, `error`.

## QualifierRelation

A relation indicating that a qualifier value of varying types (such as size/severity) is the modifier of a medical named entity.

Extends [`Relation`](#relation).

| Property     | Type     | Required | Description                           |
| ------------ | -------- | -------- | ------------------------------------- |
| `attributes` | `object` | yes      |                                       |
| `args`       | `object` | yes      | Arguments for the qualifier relation. |

## QuestionStatus

Specifies if the entity is within the scope of a question that is posed in a medical context (e.g. 'rule out' or 'assess'). An entity can either be is_question or not_question. Enabled in Radiology reports only unless the question appears in an 'Indication' section.

Type: `string`. One of: `is_question`, `not_question`.

## Relation

A relation that is inferred between entities based on understanding the text.

| Property        | Type                                     | Required | Description                                |
| --------------- | ---------------------------------------- | -------- | ------------------------------------------ |
| `attributes`    | `object`                                 | yes      |                                            |
| `label`         | [`RelationLabel`](#relationlabel)        | yes      | Label for this relation.                   |
| `concept_links` | array of [`ConceptLabel`](#conceptlabel) | yes      | List of concepts that match this relation. |

## RelationEntityArg

Argument of a relation refering to an entity.

| Property | Type                          | Required | Description                                                                                     |
| -------- | ----------------------------- | -------- | ----------------------------------------------------------------------------------------------- |
| `ref`    | [`EntityLabel`](#entitylabel) | yes      | Label for the named entity used as an argument to a relation.                                   |
| `text`   | array of `string`             | no       | Parts of the input text representing this argument. Present when the 'text' feature is enabled. |

## RelationLabel

Relation label, unique within the document.

Type: `string`.

## RelationPersonArg

Argument of a relation refering to a person.

| Property | Type                          | Required | Description                                                                                     |
| -------- | ----------------------------- | -------- | ----------------------------------------------------------------------------------------------- |
| `ref`    | [`EntityLabel`](#entitylabel) | yes      | Label for the named entity for person(s).                                                       |
| `text`   | array of `string`             | no       | Parts of the input text representing this argument. Present when the 'text' feature is enabled. |

## ReportedEventRelation

A relation capturing the notion of a communication between two groups of entities. Currently the only supported `category` of this relation is `critical_results`, which indicates that critical results about a important diagnosis are recorded as having been communicated.

Extends [`Relation`](#relation).

| Property     | Type     | Required | Description |
| ------------ | -------- | -------- | ----------- |
| `attributes` | `object` | yes      |             |
| `args`       | `object` | yes      |             |

## SectionLocation

A location indicating a section of a document. For example a 'Subjective' section may have 'Problem' and 'Nutrition' sub-sections. In this example 'Subjective' will have level 0 and null parent, while 'Problem' and 'Nutrition' will both have level 1 and their parents will point to the 'Subjective' section.

Extends [`Location`](#location).

| Property  | Type                                        | Required | Description                                                                                                          |
| --------- | ------------------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------- |
| `spans`   | array of [`Span`](#span)                    | yes      | The spans into the input text that make up this location.                                                            |
| `text`    | array of `string`                           | no       | The parts input text corresponding to the spans. Present when the 'text' feature is enabled.                         |
| `name`    | [`SectionName`](#sectionname)               | yes      | Name of this section.                                                                                                |
| `level`   | `integer`                                   | yes      | The level of this section: 0 for outer-most sections, 1 for their subsections, etc..                                 |
| `parent`  | `null` or [`LocationLabel`](#locationlabel) | yes      | The parent section that contains this sub-section, or null if this is an outer-most section.                         |
| `heading` | `null` or [`LocationLabel`](#locationlabel) | yes      | The heading for this section, if any. Some sections are inferred from other properties of text rather than headings. |
| `pages`   | array of [`LocationLabel`](#locationlabel)  | no       | Any pages this section is on. Will be present if page information is available in input.                             |

## SectionName

The name of a section within a document, eg 'INTRO', 'IMPRESSION', 'Family History' or 'FINDINGS'.

Type: `string`.

## SentenceLocation

A location indicating a sentence.

Extends [`Location`](#location).

| Property   | Type                                       | Required | Description                                                                                  |
| ---------- | ------------------------------------------ | -------- | -------------------------------------------------------------------------------------------- |
| `spans`    | array of [`Span`](#span)                   | yes      | The spans into the input text that make up this location.                                    |
| `text`     | array of `string`                          | no       | The parts input text corresponding to the spans. Present when the 'text' feature is enabled. |
| `sections` | array of [`LocationLabel`](#locationlabel) | yes      | All sections that contain this sentence.                                                     |

## SnomedIcd10CmConcept

Concept type for ICD10-CM.

Extends [`Concept`](#concept).

| Property       | Type      | Required | Description                                                                                                                                                 |
| -------------- | --------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `map_rule`     | `string`  | yes      | Each possible target code is represented as a rule-based map consisting of a condition followed by an outcome.                                              |
| `map_advice`   | `string`  | yes      | Human-readable mapping advice with two components -- map rule and metadata guidance.                                                                        |
| `map_group`    | `integer` | yes      | An integer assigned to a set of records that coordinate to specify one target code, organizing rules for sequential evaluation to yield at most one result. |
| `map_priority` | `integer` | yes      | An integer which designates the sequence of records within each map group.                                                                                  |
| `map_category` | `string`  | yes      | Supplementary metadata guidance intended to clarify the map as a SNOMED CT foundation metadata concept identifier.                                          |

## Span

A span into text.

| Property | Type      | Required | Description     |
| -------- | --------- | -------- | --------------- |
| `end`    | `integer` | yes      | Ending index.   |
| `start`  | `integer` | yes      | Starting index. |

## TemporalityRelation

A relation indicating whether the `subject` entity is in scope of a `temporal_entity`. Currently the only supported categories of temporality are `historical` and `specific`. The `historical` category indicates that the subject entity (like `heart disease`) is within the scope of a historical `temporal_entity` (like `history of`) in the sentence `history of heart disease`. In some cases, the `temporal_entity` is not a `FoundEntity` but rather an `AssumedEntity` by virtue of occurring within a section categorized as historical e.g. `Family History:`. The `specific` category indicates that the subject entity (like `diabetes`) is within the scope of a specific time, date, or date range (`since 1982`) in the sentence `He has had diabetes since 1982`. The `polarity` attribute for this relation indicates whether the temporality status itself is negated or asserted.

Extends [`Relation`](#relation).

| Property     | Type     | Required | Description |
| ------------ | -------- | -------- | ----------- |
| `attributes` | `object` | yes      |             |
| `args`       | `object` | yes      |             |

## Uncertainty

Specifies if the entity is within the scope of a hedge or uncertainty indicator (e.g. 'might be'). An entity can either be certain or uncertain.

Type: `string`. One of: `certain`, `uncertain`.