# Semantic conventions for tracing compatibility components

LLMS index: [llms.txt](/llms.txt)

---

**Status**: [Development][DocumentStatus]

This document defines trace semantic conventions used by the
compatibility components, e.g. OpenTracing Shim layer.


## OpenTracing

`Link`s created by the OpenTracing Shim MUST set `opentracing.ref_type`
with one of the accepted values, describing the direct causal relationships
between a child Span and a parent Span, as defined by
[OpenTracing](https://github.com/opentracing/specification/blob/master/specification.md).

<!-- semconv opentracing -->
<!-- NOTE: THIS TEXT IS AUTOGENERATED. DO NOT EDIT BY HAND. -->
<!-- see templates/registry/markdown/snippet.md.j2 -->
<!-- prettier-ignore-start -->

**Attributes:**

| Key | Stability | [Requirement Level](/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
| --- | --- | --- | --- | --- | --- |
| [`opentracing.ref_type`](/docs/specs/semconv/registry/attributes/opentracing.md) | ![Development](https://img.shields.io/badge/-development-blue) | `Recommended` | string | Parent-child Reference type [1] | `child_of`; `follows_from` |

**[1] `opentracing.ref_type`:** The causal relationship between a child Span and a parent Span.

---

`opentracing.ref_type` has the following list of well-known values. If one of them applies, then the respective value MUST be used; otherwise, a custom value MAY be used.

| Value | Description | Stability |
| --- | --- | --- |
| `child_of` | The parent Span depends on the child Span in some capacity | ![Development](https://img.shields.io/badge/-development-blue) |
| `follows_from` | The parent Span doesn't depend in any way on the result of the child Span | ![Development](https://img.shields.io/badge/-development-blue) |

<!-- prettier-ignore-end -->
<!-- END AUTOGENERATED TEXT -->
<!-- endsemconv -->

[DocumentStatus]: /docs/specs/otel/document-status
