diff --git a/docs/cicd/cicd-metrics.md b/docs/cicd/cicd-metrics.md
index 3a1c33d152..46b0350fb8 100644
--- a/docs/cicd/cicd-metrics.md
+++ b/docs/cicd/cicd-metrics.md
@@ -387,6 +387,15 @@ the same backends.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
@@ -450,6 +459,15 @@ the same backends.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
@@ -534,6 +552,15 @@ revision based on the VCS system and situational context.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
@@ -618,6 +645,15 @@ revision based on the VCS system and situational context.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
@@ -656,6 +692,15 @@ This metric is [recommended][MetricRecommended].
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
@@ -704,6 +749,15 @@ the same backends.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
---
`vcs.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.
@@ -793,6 +847,15 @@ the same backends.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
---
`vcs.ref.base.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.
@@ -881,6 +944,15 @@ the same backends.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
---
`vcs.ref.base.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.
@@ -963,6 +1035,15 @@ the same backends.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
---
`vcs.ref.head.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.
@@ -1019,6 +1100,15 @@ the same backends.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
diff --git a/docs/gen-ai/gen-ai-metrics.md b/docs/gen-ai/gen-ai-metrics.md
index ec8cfcdaa8..818c0d6b8e 100644
--- a/docs/gen-ai/gen-ai-metrics.md
+++ b/docs/gen-ai/gen-ai-metrics.md
@@ -166,6 +166,15 @@ applicable `aws.bedrock.*` attributes and are not expected to include
| `input` | Input tokens (prompt, input, etc.) |  |
| `output` | Output tokens (completion, response, etc.) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `output` | Output tokens (completion, response, etc.) | Use `output` value instead. |
+
+
+
diff --git a/docs/messaging/azure-messaging.md b/docs/messaging/azure-messaging.md
index 194ba75693..70f1309f75 100644
--- a/docs/messaging/azure-messaging.md
+++ b/docs/messaging/azure-messaging.md
@@ -147,6 +147,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
---
`messaging.servicebus.disposition_status` 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.
@@ -272,6 +282,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
diff --git a/docs/messaging/gcp-pubsub.md b/docs/messaging/gcp-pubsub.md
index 441ea12378..3d67a9c1a2 100644
--- a/docs/messaging/gcp-pubsub.md
+++ b/docs/messaging/gcp-pubsub.md
@@ -141,6 +141,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
diff --git a/docs/messaging/kafka.md b/docs/messaging/kafka.md
index b291f00b67..666ae21a0a 100644
--- a/docs/messaging/kafka.md
+++ b/docs/messaging/kafka.md
@@ -150,6 +150,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
diff --git a/docs/messaging/messaging-metrics.md b/docs/messaging/messaging-metrics.md
index 5ad3e76461..ff50feed4d 100644
--- a/docs/messaging/messaging-metrics.md
+++ b/docs/messaging/messaging-metrics.md
@@ -146,6 +146,16 @@ the broker doesn't have such notion, the destination name SHOULD uniquely identi
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
---
`messaging.system` 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.
diff --git a/docs/messaging/messaging-spans.md b/docs/messaging/messaging-spans.md
index a27cee0eea..e75a0cd026 100644
--- a/docs/messaging/messaging-spans.md
+++ b/docs/messaging/messaging-spans.md
@@ -492,6 +492,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
---
`messaging.system` 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.
diff --git a/docs/messaging/rabbitmq.md b/docs/messaging/rabbitmq.md
index cb40b79f1f..0072105a52 100644
--- a/docs/messaging/rabbitmq.md
+++ b/docs/messaging/rabbitmq.md
@@ -138,6 +138,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
diff --git a/docs/messaging/rocketmq.md b/docs/messaging/rocketmq.md
index 1073432ef8..8bb65510f4 100644
--- a/docs/messaging/rocketmq.md
+++ b/docs/messaging/rocketmq.md
@@ -145,6 +145,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
---
`messaging.rocketmq.consumption_model` 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.
diff --git a/docs/messaging/sns.md b/docs/messaging/sns.md
index 96c61ee266..341aa43f4b 100644
--- a/docs/messaging/sns.md
+++ b/docs/messaging/sns.md
@@ -92,6 +92,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
diff --git a/docs/messaging/sqs.md b/docs/messaging/sqs.md
index 9d4571574b..24e2c1d598 100644
--- a/docs/messaging/sqs.md
+++ b/docs/messaging/sqs.md
@@ -92,6 +92,16 @@ and SHOULD be provided **at span creation time** (if provided at all):
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
diff --git a/docs/registry/attributes/android.md b/docs/registry/attributes/android.md
index 687121360e..eb4c35d735 100644
--- a/docs/registry/attributes/android.md
+++ b/docs/registry/attributes/android.md
@@ -43,8 +43,13 @@ This document defines attributes that represents an occurrence of a lifecycle tr
`android.state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `background` | Any time after Activity.onPause() or, if the app has no Activity, Context.stopService() has been called when the app was in the foreground state. |  |
-| `created` | Any time before Activity.onResume() or, if the app has no Activity, Context.startService() has been called in the app for the first time. |  |
-| `foreground` | Any time after Activity.onResume() or, if the app has no Activity, Context.startService() has been called when the app was in either the created or background states. |  |
+| `background` | Any time after Activity.onPause() or, if the app has no Activity, Context.stopService() has been called when the app was in the foreground state. | Use `background` value for `android.app.state` attribute instead. |
+| `created` | Any time before Activity.onResume() or, if the app has no Activity, Context.startService() has been called in the app for the first time. | Use `created` value for `android.app.state` attribute instead. |
+| `foreground` | Any time after Activity.onResume() or, if the app has no Activity, Context.startService() has been called when the app was in either the created or background states. | Use `foreground` value for `android.app.state` attribute instead. |
+
+
diff --git a/docs/registry/attributes/cloud.md b/docs/registry/attributes/cloud.md
index adfb9fa7fe..8c75decbed 100644
--- a/docs/registry/attributes/cloud.md
+++ b/docs/registry/attributes/cloud.md
@@ -80,6 +80,21 @@ The following well-known definitions MUST be used if you set this attribute and
| `tencent_cloud_eks` | Tencent Cloud Elastic Kubernetes Service (EKS) |  |
| `tencent_cloud_scf` | Tencent Cloud Serverless Cloud Function (SCF) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `azure_aks` | Azure Kubernetes Service | Use `azure.aks` value instead. |
+| `azure_app_service` | Azure App Service | Use `azure.app_service` value instead. |
+| `azure_container_apps` | Azure Container Apps | Use `azure.container_apps` value instead. |
+| `azure_container_instances` | Azure Container Instances | Use `azure.container_instances` value instead. |
+| `azure_functions` | Azure Functions | Use `azure.functions` value instead. |
+| `azure_openshift` | Azure Red Hat OpenShift | Use `azure.openshift` value instead. |
+| `azure_vm` | Azure Virtual Machines | Use `azure.vm` value instead. |
+
+
+
---
`cloud.provider` 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.
diff --git a/docs/registry/attributes/container.md b/docs/registry/attributes/container.md
index a3bee1557c..af4412d6ed 100644
--- a/docs/registry/attributes/container.md
+++ b/docs/registry/attributes/container.md
@@ -60,8 +60,13 @@ Describes deprecated container attributes.
`container.cpu.state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `kernel` | When tasks of the cgroup are in kernel mode (Linux). When all container processes are in kernel mode (Windows). |  |
-| `system` | When CPU is used by the system (host OS) |  |
-| `user` | When tasks of the cgroup are in user mode (Linux). When all container processes are in user mode (Windows). |  |
+| `kernel` | When tasks of the cgroup are in kernel mode (Linux). When all container processes are in kernel mode (Windows). | Use `kernel` value for `cpu.mode` attribute instead. |
+| `system` | When CPU is used by the system (host OS) | Use `system` value for `cpu.mode` attribute instead. |
+| `user` | When tasks of the cgroup are in user mode (Linux). When all container processes are in user mode (Windows). | Use `user` value for `cpu.mode` attribute instead. |
+
+
diff --git a/docs/registry/attributes/db.md b/docs/registry/attributes/db.md
index a98f57e3c3..1d2ea95fad 100644
--- a/docs/registry/attributes/db.md
+++ b/docs/registry/attributes/db.md
@@ -213,118 +213,148 @@ Describes deprecated database attributes.
`db.cassandra.consistency_level` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `all` | all |  |
-| `any` | any |  |
-| `each_quorum` | each_quorum |  |
-| `local_one` | local_one |  |
-| `local_quorum` | local_quorum |  |
-| `local_serial` | local_serial |  |
-| `one` | one |  |
-| `quorum` | quorum |  |
-| `serial` | serial |  |
-| `three` | three |  |
-| `two` | two |  |
+| `all` | all | Use `all` value for `cassandra.consistency.level` attribute instead. |
+| `any` | any | Use `any` value for `cassandra.consistency.level` attribute instead. |
+| `each_quorum` | each_quorum | Use `each_quorum` value for `cassandra.consistency.level` attribute instead. |
+| `local_one` | local_one | Use `local_one` value for `cassandra.consistency.level` attribute instead. |
+| `local_quorum` | local_quorum | Use `local_quorum` value for `cassandra.consistency.level` attribute instead. |
+| `local_serial` | local_serial | Use `local_serial` value for `cassandra.consistency.level` attribute instead. |
+| `one` | one | Use `one` value for `cassandra.consistency.level` attribute instead. |
+| `quorum` | quorum | Use `quorum` value for `cassandra.consistency.level` attribute instead. |
+| `serial` | serial | Use `serial` value for `cassandra.consistency.level` attribute instead. |
+| `three` | three | Use `three` value for `cassandra.consistency.level` attribute instead. |
+| `two` | two | Use `two` value for `cassandra.consistency.level` attribute instead. |
+
+
---
`db.cosmosdb.connection_mode` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `direct` | Direct connection. |  |
-| `gateway` | Gateway (HTTP) connection. |  |
+| `direct` | Direct connection. | Use `direct` value for `azure.cosmosdb.connection.mode` attribute instead. |
+| `gateway` | Gateway (HTTP) connection. | Use `gateway` value for `azure.cosmosdb.connection.mode` attribute instead. |
+
+
---
`db.cosmosdb.consistency_level` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `BoundedStaleness` | bounded_staleness |  |
-| `ConsistentPrefix` | consistent_prefix |  |
-| `Eventual` | eventual |  |
-| `Session` | session |  |
-| `Strong` | strong |  |
+| `BoundedStaleness` | bounded_staleness | Use `BoundedStaleness` value for `azure.cosmosdb.consistency.level` attribute instead. |
+| `ConsistentPrefix` | consistent_prefix | Use `ConsistentPrefix` value for `azure.cosmosdb.consistency.level` attribute instead. |
+| `Eventual` | eventual | Use `Eventual` value for `azure.cosmosdb.consistency.level` attribute instead. |
+| `Session` | session | Use `Session` value for `azure.cosmosdb.consistency.level` attribute instead. |
+| `Strong` | strong | Use `Strong` value for `azure.cosmosdb.consistency.level` attribute instead. |
+
+
---
`db.cosmosdb.operation_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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `batch` | batch |  |
-| `create` | create |  |
-| `delete` | delete |  |
-| `execute` | execute |  |
-| `execute_javascript` | execute_javascript |  |
-| `head` | head |  |
-| `head_feed` | head_feed |  |
-| `invalid` | invalid |  |
-| `patch` | patch |  |
-| `query` | query |  |
-| `query_plan` | query_plan |  |
-| `read` | read |  |
-| `read_feed` | read_feed |  |
-| `replace` | replace |  |
-| `upsert` | upsert |  |
+| `batch` | batch | Removed, no replacement at this time. |
+| `create` | create | Removed, no replacement at this time. |
+| `delete` | delete | Removed, no replacement at this time. |
+| `execute` | execute | Removed, no replacement at this time. |
+| `execute_javascript` | execute_javascript | Removed, no replacement at this time. |
+| `head` | head | Removed, no replacement at this time. |
+| `head_feed` | head_feed | Removed, no replacement at this time. |
+| `invalid` | invalid | Removed, no replacement at this time. |
+| `patch` | patch | Removed, no replacement at this time. |
+| `query` | query | Removed, no replacement at this time. |
+| `query_plan` | query_plan | Removed, no replacement at this time. |
+| `read` | read | Removed, no replacement at this time. |
+| `read_feed` | read_feed | Removed, no replacement at this time. |
+| `replace` | replace | Removed, no replacement at this time. |
+| `upsert` | upsert | Removed, no replacement at this time. |
+
+
---
`db.system` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `adabas` | Adabas (Adaptable Database System) |  |
-| `cassandra` | Apache Cassandra |  |
-| `clickhouse` | ClickHouse |  |
-| `cockroachdb` | CockroachDB |  |
-| `cosmosdb` | Microsoft Azure Cosmos DB |  |
-| `couchbase` | Couchbase |  |
-| `couchdb` | CouchDB |  |
-| `db2` | IBM Db2 |  |
-| `derby` | Apache Derby |  |
-| `dynamodb` | Amazon DynamoDB |  |
-| `edb` | EnterpriseDB |  |
-| `elasticsearch` | Elasticsearch |  |
-| `filemaker` | FileMaker |  |
-| `firebird` | Firebird |  |
-| `geode` | Apache Geode |  |
-| `h2` | H2 |  |
-| `hanadb` | SAP HANA |  |
-| `hbase` | Apache HBase |  |
-| `hive` | Apache Hive |  |
-| `hsqldb` | HyperSQL DataBase |  |
-| `influxdb` | InfluxDB |  |
-| `informix` | Informix |  |
-| `ingres` | Ingres |  |
-| `instantdb` | InstantDB |  |
-| `interbase` | InterBase |  |
-| `intersystems_cache` | InterSystems Caché |  |
-| `mariadb` | MariaDB |  |
-| `maxdb` | SAP MaxDB |  |
-| `memcached` | Memcached |  |
-| `mongodb` | MongoDB |  |
-| `mssql` | Microsoft SQL Server |  |
-| `mysql` | MySQL |  |
-| `neo4j` | Neo4j |  |
-| `netezza` | Netezza |  |
-| `opensearch` | OpenSearch |  |
-| `oracle` | Oracle Database |  |
-| `other_sql` | Some other SQL database. Fallback only. See notes. |  |
-| `pervasive` | Pervasive PSQL |  |
-| `pointbase` | PointBase |  |
-| `postgresql` | PostgreSQL |  |
-| `progress` | Progress Database |  |
-| `redis` | Redis |  |
-| `redshift` | Amazon Redshift |  |
-| `spanner` | Cloud Spanner |  |
-| `sqlite` | SQLite |  |
-| `sybase` | Sybase |  |
-| `teradata` | Teradata |  |
-| `trino` | Trino |  |
-| `vertica` | Vertica |  |
+| `adabas` | Adabas (Adaptable Database System) | Use `adabas` value for `db.system.name` attribute instead. |
+| `cache` | Deprecated, use `intersystems_cache` instead. | Use `intersystems_cache` value for `db.system.name` attribute instead. |
+| `cassandra` | Apache Cassandra | Use `cassandra` value for `db.system.name` attribute instead. |
+| `clickhouse` | ClickHouse | Use `clickhouse` value for `db.system.name` attribute instead. |
+| `cloudscape` | Deprecated, use `other_sql` instead. | Use `other_sql` value for `db.system.name` attribute instead. |
+| `cockroachdb` | CockroachDB | Use `cockroachdb` value for `db.system.name` attribute instead. |
+| `coldfusion` | Deprecated, no replacement at this time. | Obsoleted. |
+| `cosmosdb` | Microsoft Azure Cosmos DB | Use `cosmosdb` value for `db.system.name` attribute instead. |
+| `couchbase` | Couchbase | Use `couchbase` value for `db.system.name` attribute instead. |
+| `couchdb` | CouchDB | Use `couchdb` value for `db.system.name` attribute instead. |
+| `db2` | IBM Db2 | Use `db2` value for `db.system.name` attribute instead. |
+| `derby` | Apache Derby | Use `derby` value for `db.system.name` attribute instead. |
+| `dynamodb` | Amazon DynamoDB | Use `dynamodb` value for `db.system.name` attribute instead. |
+| `edb` | EnterpriseDB | Use `edb` value for `db.system.name` attribute instead. |
+| `elasticsearch` | Elasticsearch | Use `elasticsearch` value for `db.system.name` attribute instead. |
+| `filemaker` | FileMaker | Use `filemaker` value for `db.system.name` attribute instead. |
+| `firebird` | Firebird | Use `firebird` value for `db.system.name` attribute instead. |
+| `firstsql` | Deprecated, use `other_sql` instead. | Use `other_sql` value for `db.system.name` attribute instead. |
+| `geode` | Apache Geode | Use `geode` value for `db.system.name` attribute instead. |
+| `h2` | H2 | Use `h2` value for `db.system.name` attribute instead. |
+| `hanadb` | SAP HANA | Use `hanadb` value for `db.system.name` attribute instead. |
+| `hbase` | Apache HBase | Use `hbase` value for `db.system.name` attribute instead. |
+| `hive` | Apache Hive | Use `hive` value for `db.system.name` attribute instead. |
+| `hsqldb` | HyperSQL DataBase | Use `hsqldb` value for `db.system.name` attribute instead. |
+| `influxdb` | InfluxDB | Use `influxdb` value for `db.system.name` attribute instead. |
+| `informix` | Informix | Use `informix` value for `db.system.name` attribute instead. |
+| `ingres` | Ingres | Use `ingres` value for `db.system.name` attribute instead. |
+| `instantdb` | InstantDB | Use `instantdb` value for `db.system.name` attribute instead. |
+| `interbase` | InterBase | Use `interbase` value for `db.system.name` attribute instead. |
+| `intersystems_cache` | InterSystems Caché | Use `intersystems_cache` value for `db.system.name` attribute instead. |
+| `mariadb` | MariaDB | Use `mariadb` value for `db.system.name` attribute instead. |
+| `maxdb` | SAP MaxDB | Use `maxdb` value for `db.system.name` attribute instead. |
+| `memcached` | Memcached | Use `memcached` value for `db.system.name` attribute instead. |
+| `mongodb` | MongoDB | Use `mongodb` value for `db.system.name` attribute instead. |
+| `mssql` | Microsoft SQL Server | Use `mssql` value for `db.system.name` attribute instead. |
+| `mssqlcompact` | Deprecated, Microsoft SQL Server Compact is discontinued. | Use `other_sql` value for `db.system.name` attribute instead. |
+| `mysql` | MySQL | Use `mysql` value for `db.system.name` attribute instead. |
+| `neo4j` | Neo4j | Use `neo4j` value for `db.system.name` attribute instead. |
+| `netezza` | Netezza | Use `netezza` value for `db.system.name` attribute instead. |
+| `opensearch` | OpenSearch | Use `opensearch` value for `db.system.name` attribute instead. |
+| `oracle` | Oracle Database | Use `oracle` value for `db.system.name` attribute instead. |
+| `other_sql` | Some other SQL database. Fallback only. See notes. | Use `other_sql` value for `db.system.name` attribute instead. |
+| `pervasive` | Pervasive PSQL | Use `pervasive` value for `db.system.name` attribute instead. |
+| `pointbase` | PointBase | Use `pointbase` value for `db.system.name` attribute instead. |
+| `postgresql` | PostgreSQL | Use `postgresql` value for `db.system.name` attribute instead. |
+| `progress` | Progress Database | Use `progress` value for `db.system.name` attribute instead. |
+| `redis` | Redis | Use `redis` value for `db.system.name` attribute instead. |
+| `redshift` | Amazon Redshift | Use `redshift` value for `db.system.name` attribute instead. |
+| `spanner` | Cloud Spanner | Use `spanner` value for `db.system.name` attribute instead. |
+| `sqlite` | SQLite | Use `sqlite` value for `db.system.name` attribute instead. |
+| `sybase` | Sybase | Use `sybase` value for `db.system.name` attribute instead. |
+| `teradata` | Teradata | Use `teradata` value for `db.system.name` attribute instead. |
+| `trino` | Trino | Use `trino` value for `db.system.name` attribute instead. |
+| `vertica` | Vertica | Use `vertica` value for `db.system.name` attribute instead. |
+
+
## Deprecated Database Metrics
@@ -343,16 +373,26 @@ Describes deprecated db metrics attributes.
`db.client.connections.state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `idle` | idle |  |
-| `used` | used |  |
+| `idle` | idle | Use `idle` value for `db.client.connection.state` attribute instead. |
+| `used` | used | Use `used` value for `db.client.connection.state` attribute instead. |
+
+
---
`state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `idle` | idle |  |
-| `used` | used |  |
+| `idle` | idle | Use `idle` value for `db.client.connection.state` attribute instead. |
+| `used` | used | Use `used` value for `db.client.connection.state` attribute instead. |
+
+
diff --git a/docs/registry/attributes/feature-flag.md b/docs/registry/attributes/feature-flag.md
index 979da587cb..a8923adb02 100644
--- a/docs/registry/attributes/feature-flag.md
+++ b/docs/registry/attributes/feature-flag.md
@@ -67,14 +67,19 @@ Describes deprecated feature flag attributes.
`feature_flag.evaluation.reason` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `cached` | The resolved value was retrieved from cache. |  |
-| `default` | The resolved value fell back to a pre-configured value (no dynamic evaluation occurred or dynamic evaluation yielded no result). |  |
-| `disabled` | The resolved value was the result of the flag being disabled in the management system. |  |
-| `error` | The resolved value was the result of an error. |  |
-| `split` | The resolved value was the result of pseudorandom assignment. |  |
-| `stale` | The resolved value is non-authoritative or possibly out of date |  |
-| `static` | The resolved value is static (no dynamic evaluation). |  |
-| `targeting_match` | The resolved value was the result of a dynamic evaluation, such as a rule or specific user-targeting. |  |
-| `unknown` | The reason for the resolved value could not be determined. |  |
+| `cached` | The resolved value was retrieved from cache. | Use `cached` value for `feature_flag.result.reason` attribute instead. |
+| `default` | The resolved value fell back to a pre-configured value (no dynamic evaluation occurred or dynamic evaluation yielded no result). | Use `default` value for `feature_flag.result.reason` attribute instead. |
+| `disabled` | The resolved value was the result of the flag being disabled in the management system. | Use `disabled` value for `feature_flag.result.reason` attribute instead. |
+| `error` | The resolved value was the result of an error. | Use `error` value for `feature_flag.result.reason` attribute instead. |
+| `split` | The resolved value was the result of pseudorandom assignment. | Use `split` value for `feature_flag.result.reason` attribute instead. |
+| `stale` | The resolved value is non-authoritative or possibly out of date | Use `stale` value for `feature_flag.result.reason` attribute instead. |
+| `static` | The resolved value is static (no dynamic evaluation). | Use `static` value for `feature_flag.result.reason` attribute instead. |
+| `targeting_match` | The resolved value was the result of a dynamic evaluation, such as a rule or specific user-targeting. | Use `targeting_match` value for `feature_flag.result.reason` attribute instead. |
+| `unknown` | The reason for the resolved value could not be determined. | Use `unknown` value for `feature_flag.result.reason` attribute instead. |
+
+
diff --git a/docs/registry/attributes/gen-ai.md b/docs/registry/attributes/gen-ai.md
index af894ef526..339b77b1b6 100644
--- a/docs/registry/attributes/gen-ai.md
+++ b/docs/registry/attributes/gen-ai.md
@@ -235,6 +235,15 @@ Datastore: A tool used by the agent to access and query structured or unstructur
| `input` | Input tokens (prompt, input, etc.) |  |
| `output` | Output tokens (completion, response, etc.) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `output` | Output tokens (completion, response, etc.) | Use `output` value instead. |
+
+
+
## Deprecated GenAI Attributes
Describes deprecated `gen_ai` attributes.
@@ -253,23 +262,30 @@ Describes deprecated `gen_ai` attributes.
`gen_ai.system` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `anthropic` | Anthropic |  |
-| `aws.bedrock` | AWS Bedrock |  |
-| `azure.ai.inference` | Azure AI Inference |  |
-| `azure.ai.openai` | Azure OpenAI |  |
-| `cohere` | Cohere |  |
-| `deepseek` | DeepSeek |  |
-| `gcp.gemini` | Gemini [17] |  |
-| `gcp.gen_ai` | Any Google generative AI endpoint [18] |  |
-| `gcp.vertex_ai` | Vertex AI [19] |  |
-| `groq` | Groq |  |
-| `ibm.watsonx.ai` | IBM Watsonx AI |  |
-| `mistral_ai` | Mistral AI |  |
-| `openai` | OpenAI |  |
-| `perplexity` | Perplexity |  |
-| `xai` | xAI |  |
+| `anthropic` | Anthropic | Use `anthropic` value for `gen_ai.provider.name` attribute instead. |
+| `aws.bedrock` | AWS Bedrock | Use `aws.bedrock` value for `gen_ai.provider.name` attribute instead. |
+| `az.ai.inference` | Azure AI Inference | Use `azure.ai.inference` value for `gen_ai.provider.name` attribute instead. |
+| `az.ai.openai` | Azure OpenAI | Use `azure.ai.openai` value for `gen_ai.provider.name` attribute instead. |
+| `azure.ai.inference` | Azure AI Inference | Use `azure.ai.inference` value for `gen_ai.provider.name` attribute instead. |
+| `azure.ai.openai` | Azure OpenAI | Use `azure.ai.openai` value for `gen_ai.provider.name` attribute instead. |
+| `cohere` | Cohere | Use `cohere` value for `gen_ai.provider.name` attribute instead. |
+| `deepseek` | DeepSeek | Use `deepseek` value for `gen_ai.provider.name` attribute instead. |
+| `gcp.gemini` | Gemini [17] | Use `gcp.gemini` value for `gen_ai.provider.name` attribute instead. |
+| `gcp.gen_ai` | Any Google generative AI endpoint [18] | Use `gcp.gen_ai` value for `gen_ai.provider.name` attribute instead. |
+| `gcp.vertex_ai` | Vertex AI [19] | Use `gcp.vertex_ai` value for `gen_ai.provider.name` attribute instead. |
+| `gemini` | Gemini | Use `gcp.gemini` value for `gen_ai.provider.name` attribute instead. |
+| `groq` | Groq | Use `groq` value for `gen_ai.provider.name` attribute instead. |
+| `ibm.watsonx.ai` | IBM Watsonx AI | Use `ibm.watsonx.ai` value for `gen_ai.provider.name` attribute instead. |
+| `mistral_ai` | Mistral AI | Use `mistral_ai` value for `gen_ai.provider.name` attribute instead. |
+| `openai` | OpenAI | Use `openai` value for `gen_ai.provider.name` attribute instead. |
+| `perplexity` | Perplexity | Use `perplexity` value for `gen_ai.provider.name` attribute instead. |
+| `vertex_ai` | Vertex AI | Use `gcp.vertex_ai` value for `gen_ai.provider.name` attribute instead. |
+| `xai` | xAI | Use `xai` value for `gen_ai.provider.name` attribute instead. |
**[17]:** This refers to the 'generativelanguage.googleapis.com' endpoint. Also known as the AI Studio API. May use common attributes prefixed with 'gcp.gen_ai.'.
@@ -277,6 +293,8 @@ Describes deprecated `gen_ai` attributes.
**[19]:** This refers to the 'aiplatform.googleapis.com' endpoint. May use common attributes prefixed with 'gcp.gen_ai.'.
+
+
## Deprecated OpenAI GenAI Attributes
Describes deprecated `gen_ai.openai` attributes.
@@ -295,17 +313,27 @@ Describes deprecated `gen_ai.openai` attributes.
`gen_ai.openai.request.response_format` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `json_object` | JSON object response format |  |
-| `json_schema` | JSON schema response format |  |
-| `text` | Text response format |  |
+| `json_object` | JSON object response format | Use `json_object` value for `gen_ai.output.type` attribute instead. |
+| `json_schema` | JSON schema response format | Use `json_schema` value for `gen_ai.output.type` attribute instead. |
+| `text` | Text response format | Use `text` value for `gen_ai.output.type` attribute instead. |
+
+
---
`gen_ai.openai.request.service_tier` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `auto` | The system will utilize scale tier credits until they are exhausted. |  |
-| `default` | The system will utilize the default scale tier. |  |
+| `auto` | The system will utilize scale tier credits until they are exhausted. | Use `auto` value for `openai.request.service_tier` attribute instead. |
+| `default` | The system will utilize the default scale tier. | Use `default` value for `openai.request.service_tier` attribute instead. |
+
+
diff --git a/docs/registry/attributes/http.md b/docs/registry/attributes/http.md
index 673cd51359..50f31d0427 100644
--- a/docs/registry/attributes/http.md
+++ b/docs/registry/attributes/http.md
@@ -143,11 +143,16 @@ Describes deprecated HTTP attributes.
`http.flavor` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `1.0` | HTTP/1.0 |  |
-| `1.1` | HTTP/1.1 |  |
-| `2.0` | HTTP/2 |  |
-| `3.0` | HTTP/3 |  |
-| `QUIC` | QUIC protocol. |  |
-| `SPDY` | SPDY protocol. |  |
+| `1.0` | HTTP/1.0 | Split into `network.protocol.name` and `network.protocol.version` |
+| `1.1` | HTTP/1.1 | Split into `network.protocol.name` and `network.protocol.version` |
+| `2.0` | HTTP/2 | Split into `network.protocol.name` and `network.protocol.version` |
+| `3.0` | HTTP/3 | Split into `network.protocol.name` and `network.protocol.version` |
+| `QUIC` | QUIC protocol. | Split into `network.protocol.name` and `network.protocol.version` |
+| `SPDY` | SPDY protocol. | Split into `network.protocol.name` and `network.protocol.version` |
+
+
diff --git a/docs/registry/attributes/ios.md b/docs/registry/attributes/ios.md
index f946e34115..52185e92c4 100644
--- a/docs/registry/attributes/ios.md
+++ b/docs/registry/attributes/ios.md
@@ -46,10 +46,15 @@ The iOS platform on which the iOS application is running.
`ios.state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `active` | The app has become `active`. Associated with UIKit notification `applicationDidBecomeActive`. |  |
-| `background` | The app is now in the background. This value is associated with UIKit notification `applicationDidEnterBackground`. |  |
-| `foreground` | The app is now in the foreground. This value is associated with UIKit notification `applicationWillEnterForeground`. |  |
-| `inactive` | The app is now `inactive`. Associated with UIKit notification `applicationWillResignActive`. |  |
-| `terminate` | The app is about to terminate. Associated with UIKit notification `applicationWillTerminate`. |  |
+| `active` | The app has become `active`. Associated with UIKit notification `applicationDidBecomeActive`. | Use `active` value for `ios.app.state` attribute instead. |
+| `background` | The app is now in the background. This value is associated with UIKit notification `applicationDidEnterBackground`. | Use `background` value for `ios.app.state` attribute instead. |
+| `foreground` | The app is now in the foreground. This value is associated with UIKit notification `applicationWillEnterForeground`. | Use `foreground` value for `ios.app.state` attribute instead. |
+| `inactive` | The app is now `inactive`. Associated with UIKit notification `applicationWillResignActive`. | Use `inactive` value for `ios.app.state` attribute instead. |
+| `terminate` | The app is about to terminate. Associated with UIKit notification `applicationWillTerminate`. | Use `terminate` value for `ios.app.state` attribute instead. |
+
+
diff --git a/docs/registry/attributes/messaging.md b/docs/registry/attributes/messaging.md
index 3edc75896b..538857977c 100644
--- a/docs/registry/attributes/messaging.md
+++ b/docs/registry/attributes/messaging.md
@@ -70,6 +70,16 @@ size should be used.
| `send` | One or more messages are provided for sending to an intermediary. If a single message is sent, the context of the "Send" span can be used as the creation context and no "Create" span needs to be created. |  |
| `settle` | One or more messages are settled. |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `deliver` | Deprecated. Use `process` instead. | Use `process` value instead. |
+| `publish` | Deprecated. Use `send` instead. | Use `send` value instead. |
+
+
+
---
`messaging.system` 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.
diff --git a/docs/registry/attributes/network.md b/docs/registry/attributes/network.md
index debd9e2894..5e568f8363 100644
--- a/docs/registry/attributes/network.md
+++ b/docs/registry/attributes/network.md
@@ -162,22 +162,32 @@ These attributes may be used for any network related operation.
`net.sock.family` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `inet` | IPv4 address |  |
-| `inet6` | IPv6 address |  |
-| `unix` | Unix domain socket path |  |
+| `inet` | IPv4 address | Split to `network.transport` and `network.type`. |
+| `inet6` | IPv6 address | Split to `network.transport` and `network.type`. |
+| `unix` | Unix domain socket path | Split to `network.transport` and `network.type`. |
+
+
---
`net.transport` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `inproc` | In-process communication. [6] |  |
-| `ip_tcp` | ip_tcp |  |
-| `ip_udp` | ip_udp |  |
-| `other` | Something else (non IP-based). |  |
-| `pipe` | Named or anonymous pipe. |  |
+| `inproc` | In-process communication. [6] | Use `inproc` value for `network.transport` attribute instead. |
+| `ip_tcp` | ip_tcp | Use `ip_tcp` value for `network.transport` attribute instead. |
+| `ip_udp` | ip_udp | Use `ip_udp` value for `network.transport` attribute instead. |
+| `other` | Something else (non IP-based). | Use `other` value for `network.transport` attribute instead. |
+| `pipe` | Named or anonymous pipe. | Use `pipe` value for `network.transport` attribute instead. |
**[6]:** Signals that there is only in-process communication not using a "real" network protocol in cases where network attributes would normally be expected. Usually all other network attributes can be left out in that case.
+
+
diff --git a/docs/registry/attributes/os.md b/docs/registry/attributes/os.md
index 97e4171433..b0c06e580a 100644
--- a/docs/registry/attributes/os.md
+++ b/docs/registry/attributes/os.md
@@ -34,3 +34,12 @@ The operating system (OS) on which the process represented by this resource is r
| `solaris` | SunOS, Oracle Solaris |  |
| `windows` | Microsoft Windows |  |
| `zos` | IBM z/OS |  |
+
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `z_os` | IBM z/OS | Use `zos` value instead. |
+
+
diff --git a/docs/registry/attributes/process.md b/docs/registry/attributes/process.md
index 9bab50ce2f..094bf3721f 100644
--- a/docs/registry/attributes/process.md
+++ b/docs/registry/attributes/process.md
@@ -113,26 +113,41 @@ Deprecated process attributes.
`process.context_switch_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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `involuntary` | involuntary |  |
-| `voluntary` | voluntary |  |
+| `involuntary` | involuntary | Use `involuntary` value for `process.context_switch.type` attribute instead. |
+| `voluntary` | voluntary | Use `voluntary` value for `process.context_switch.type` attribute instead. |
+
+
---
`process.cpu.state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `system` | system |  |
-| `user` | user |  |
-| `wait` | wait |  |
+| `system` | system | Use `system` value for `cpu.mode` attribute instead. |
+| `user` | user | Use `user` value for `cpu.mode` attribute instead. |
+| `wait` | wait | Use `wait` value for `cpu.mode` attribute instead. |
+
+
---
`process.paging.fault_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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `major` | major |  |
-| `minor` | minor |  |
+| `major` | major | Use `major` value for `system.paging.fault.type` attribute instead. |
+| `minor` | minor | Use `minor` value for `system.paging.fault.type` attribute instead. |
+
+
diff --git a/docs/registry/attributes/rpc.md b/docs/registry/attributes/rpc.md
index 3a917a9092..7bde0dce39 100644
--- a/docs/registry/attributes/rpc.md
+++ b/docs/registry/attributes/rpc.md
@@ -145,7 +145,12 @@ Deprecated rpc message attributes.
`message.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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `RECEIVED` | received |  |
-| `SENT` | sent |  |
+| `RECEIVED` | received | Use `RECEIVED` value for `rpc.message.type` attribute instead. |
+| `SENT` | sent | Use `SENT` value for `rpc.message.type` attribute instead. |
+
+
diff --git a/docs/registry/attributes/system.md b/docs/registry/attributes/system.md
index 44534b304c..da32900c96 100644
--- a/docs/registry/attributes/system.md
+++ b/docs/registry/attributes/system.md
@@ -78,6 +78,15 @@ Describes System Memory attributes
**[1]:** Calculation based on the operating system metrics. On Linux, this corresponds to "MemTotal - MemAvailable" from /proc/meminfo, which more accurately reflects memory in active use by applications compared to older formulas based on free, cached, and buffers. If MemAvailable is not available, a fallback to those older formulas may be used.
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `shared` | shared | Removed, report shared memory usage with `metric.system.memory.shared` metric |
+
+
+
## System Paging Attributes
Describes System Memory Paging attributes
@@ -136,62 +145,87 @@ Deprecated system attributes.
`system.cpu.state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `idle` | idle |  |
-| `interrupt` | interrupt |  |
-| `iowait` | iowait |  |
-| `nice` | nice |  |
-| `steal` | steal |  |
-| `system` | system |  |
-| `user` | user |  |
+| `idle` | idle | Use `idle` value for `cpu.mode` attribute instead. |
+| `interrupt` | interrupt | Use `interrupt` value for `cpu.mode` attribute instead. |
+| `iowait` | iowait | Use `iowait` value for `cpu.mode` attribute instead. |
+| `nice` | nice | Use `nice` value for `cpu.mode` attribute instead. |
+| `steal` | steal | Use `steal` value for `cpu.mode` attribute instead. |
+| `system` | system | Use `system` value for `cpu.mode` attribute instead. |
+| `user` | user | Use `user` value for `cpu.mode` attribute instead. |
+
+
---
`system.network.state` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `close` | close |  |
-| `close_wait` | close_wait |  |
-| `closing` | closing |  |
-| `delete` | delete |  |
-| `established` | established |  |
-| `fin_wait_1` | fin_wait_1 |  |
-| `fin_wait_2` | fin_wait_2 |  |
-| `last_ack` | last_ack |  |
-| `listen` | listen |  |
-| `syn_recv` | syn_recv |  |
-| `syn_sent` | syn_sent |  |
-| `time_wait` | time_wait |  |
+| `close` | close | Use `close` value for `network.connection.state` attribute instead. |
+| `close_wait` | close_wait | Use `close_wait` value for `network.connection.state` attribute instead. |
+| `closing` | closing | Use `closing` value for `network.connection.state` attribute instead. |
+| `delete` | delete | Use `delete` value for `network.connection.state` attribute instead. |
+| `established` | established | Use `established` value for `network.connection.state` attribute instead. |
+| `fin_wait_1` | fin_wait_1 | Use `fin_wait_1` value for `network.connection.state` attribute instead. |
+| `fin_wait_2` | fin_wait_2 | Use `fin_wait_2` value for `network.connection.state` attribute instead. |
+| `last_ack` | last_ack | Use `last_ack` value for `network.connection.state` attribute instead. |
+| `listen` | listen | Use `listen` value for `network.connection.state` attribute instead. |
+| `syn_recv` | syn_recv | Use `syn_recv` value for `network.connection.state` attribute instead. |
+| `syn_sent` | syn_sent | Use `syn_sent` value for `network.connection.state` attribute instead. |
+| `time_wait` | time_wait | Use `time_wait` value for `network.connection.state` attribute instead. |
+
+
---
`system.paging.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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `major` | major |  |
-| `minor` | minor |  |
+| `major` | major | Use `major` value for `system.paging.fault.type` attribute instead. |
+| `minor` | minor | Use `minor` value for `system.paging.fault.type` attribute instead. |
+
+
---
`system.process.status` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `defunct` | defunct |  |
-| `running` | running |  |
-| `sleeping` | sleeping |  |
-| `stopped` | stopped |  |
+| `defunct` | defunct | Use `defunct` value for `process.state` attribute instead. |
+| `running` | running | Use `running` value for `process.state` attribute instead. |
+| `sleeping` | sleeping | Use `sleeping` value for `process.state` attribute instead. |
+| `stopped` | stopped | Use `stopped` value for `process.state` attribute instead. |
+
+
---
`system.processes.status` 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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `defunct` | defunct |  |
-| `running` | running |  |
-| `sleeping` | sleeping |  |
-| `stopped` | stopped |  |
+| `defunct` | defunct | Use `defunct` value for `process.state` attribute instead. |
+| `running` | running | Use `running` value for `process.state` attribute instead. |
+| `sleeping` | sleeping | Use `sleeping` value for `process.state` attribute instead. |
+| `stopped` | stopped | Use `stopped` value for `process.state` attribute instead. |
+
+
diff --git a/docs/registry/attributes/vcs.md b/docs/registry/attributes/vcs.md
index ad4d01ab6b..4293c17870 100644
--- a/docs/registry/attributes/vcs.md
+++ b/docs/registry/attributes/vcs.md
@@ -109,6 +109,15 @@ the `.git` extension.
| `github` | [GitHub](https://github.com) |  |
| `gitlab` | [GitLab](https://gitlab.com) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `gittea` | [Gitea](https://gitea.io) | Use `gitea` value instead. |
+
+
+
---
`vcs.ref.base.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.
@@ -163,7 +172,12 @@ Describes deprecated vcs attributes.
`vcs.repository.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 |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
|---|---|---|
-| `branch` | [branch](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefbranchabranch) |  |
-| `tag` | [tag](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddeftagatag) |  |
+| `branch` | [branch](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefbranchabranch) | Use `branch` value for `vcs.ref.head.type` attribute instead. |
+| `tag` | [tag](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddeftagatag) | Use `tag` value for `vcs.ref.head.type` attribute instead. |
+
+
diff --git a/docs/registry/entities/cloud.md b/docs/registry/entities/cloud.md
index c6d75ed7a6..c22e482b66 100644
--- a/docs/registry/entities/cloud.md
+++ b/docs/registry/entities/cloud.md
@@ -89,6 +89,21 @@ The following well-known definitions MUST be used if you set this attribute and
| `tencent_cloud_eks` | Tencent Cloud Elastic Kubernetes Service (EKS) |  |
| `tencent_cloud_scf` | Tencent Cloud Serverless Cloud Function (SCF) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `azure_aks` | Azure Kubernetes Service | Use `azure.aks` value instead. |
+| `azure_app_service` | Azure App Service | Use `azure.app_service` value instead. |
+| `azure_container_apps` | Azure Container Apps | Use `azure.container_apps` value instead. |
+| `azure_container_instances` | Azure Container Instances | Use `azure.container_instances` value instead. |
+| `azure_functions` | Azure Functions | Use `azure.functions` value instead. |
+| `azure_openshift` | Azure Red Hat OpenShift | Use `azure.openshift` value instead. |
+| `azure_vm` | Azure Virtual Machines | Use `azure.vm` value instead. |
+
+
+
---
`cloud.provider` 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.
diff --git a/docs/registry/entities/os.md b/docs/registry/entities/os.md
index 7184087f24..81bc1b8d11 100644
--- a/docs/registry/entities/os.md
+++ b/docs/registry/entities/os.md
@@ -52,5 +52,14 @@
| `windows` | Microsoft Windows |  |
| `zos` | IBM z/OS |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `z_os` | IBM z/OS | Use `zos` value instead. |
+
+
+
diff --git a/docs/resource/cloud.md b/docs/resource/cloud.md
index b9b3cc9b64..c8d60e91fd 100644
--- a/docs/resource/cloud.md
+++ b/docs/resource/cloud.md
@@ -87,6 +87,21 @@ The following well-known definitions MUST be used if you set this attribute and
| `tencent_cloud_eks` | Tencent Cloud Elastic Kubernetes Service (EKS) |  |
| `tencent_cloud_scf` | Tencent Cloud Serverless Cloud Function (SCF) |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `azure_aks` | Azure Kubernetes Service | Use `azure.aks` value instead. |
+| `azure_app_service` | Azure App Service | Use `azure.app_service` value instead. |
+| `azure_container_apps` | Azure Container Apps | Use `azure.container_apps` value instead. |
+| `azure_container_instances` | Azure Container Instances | Use `azure.container_instances` value instead. |
+| `azure_functions` | Azure Functions | Use `azure.functions` value instead. |
+| `azure_openshift` | Azure Red Hat OpenShift | Use `azure.openshift` value instead. |
+| `azure_vm` | Azure Virtual Machines | Use `azure.vm` value instead. |
+
+
+
---
`cloud.provider` 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.
diff --git a/docs/resource/os.md b/docs/resource/os.md
index 154e12e226..b2e95d4f34 100644
--- a/docs/resource/os.md
+++ b/docs/resource/os.md
@@ -52,6 +52,15 @@ In case of virtualized environments, this is the operating system as it is obser
| `windows` | Microsoft Windows |  |
| `zos` | IBM z/OS |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `z_os` | IBM z/OS | Use `zos` value instead. |
+
+
+
diff --git a/docs/resource/zos.md b/docs/resource/zos.md
index 20386610d6..d458b0e448 100644
--- a/docs/resource/zos.md
+++ b/docs/resource/zos.md
@@ -105,6 +105,15 @@ The following table describes how to populate the operating system attributes on
| `windows` | Microsoft Windows |  |
| `zos` | IBM z/OS |  |
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `z_os` | IBM z/OS | Use `zos` value instead. |
+
+
+
diff --git a/docs/system/system-metrics.md b/docs/system/system-metrics.md
index e67d79f28b..49b8ee6df7 100644
--- a/docs/system/system-metrics.md
+++ b/docs/system/system-metrics.md
@@ -299,6 +299,15 @@ This metric is [recommended][MetricRecommended].
**[1]:** Calculation based on the operating system metrics. On Linux, this corresponds to "MemTotal - MemAvailable" from /proc/meminfo, which more accurately reflects memory in active use by applications compared to older formulas based on free, cached, and buffers. If MemAvailable is not available, a fallback to those older formulas may be used.
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `shared` | shared | Removed, report shared memory usage with `metric.system.memory.shared` metric |
+
+
+
@@ -381,6 +390,15 @@ This metric is [recommended][MetricRecommended].
**[1]:** Calculation based on the operating system metrics. On Linux, this corresponds to "MemTotal - MemAvailable" from /proc/meminfo, which more accurately reflects memory in active use by applications compared to older formulas based on free, cached, and buffers. If MemAvailable is not available, a fallback to those older formulas may be used.
+
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+| `shared` | shared | Removed, report shared memory usage with `metric.system.memory.shared` metric |
+
+
+
diff --git a/model/os/registry.yaml b/model/os/registry.yaml
index db3e48bdb6..f28c3b2cd1 100644
--- a/model/os/registry.yaml
+++ b/model/os/registry.yaml
@@ -53,7 +53,7 @@ groups:
stability: development
- id: z_os
value: 'z_os'
- brief: "Deprecated. Use `zos` instead."
+ brief: "IBM z/OS"
deprecated:
reason: renamed
renamed_to: "zos"
diff --git a/model/vcs/registry.yaml b/model/vcs/registry.yaml
index aec8a52324..c9159c538d 100644
--- a/model/vcs/registry.yaml
+++ b/model/vcs/registry.yaml
@@ -262,7 +262,7 @@ groups:
stability: development
- id: gittea
value: gittea
- brief: "Deprecated, use `gitea` instead."
+ brief: "[Gitea](https://gitea.io)"
deprecated:
reason: renamed
renamed_to: "gitea"
diff --git a/templates/registry/markdown/attribute_namespace.md.j2 b/templates/registry/markdown/attribute_namespace.md.j2
index 479bb23b8c..44299e91e8 100644
--- a/templates/registry/markdown/attribute_namespace.md.j2
+++ b/templates/registry/markdown/attribute_namespace.md.j2
@@ -44,8 +44,5 @@
{%- for attribute in group.attributes | sort(attribute="name") %}{% set attr_anchor = attribute.name | kebab_case %}
| `{{ attrs.name(attribute) }}` | {{ stability.badge(attribute.stability, attribute.deprecated, attribute.brief) | trim }} | {{ attrs.type(attribute) }} | {{ attribute.brief | trim }}{{ notes.add({"note": attribute.note, "name": attrs.name(attribute)}) }} | {{ examples.format(attribute) | trim }} |
{%- endfor %}
-{{ notes.render() }}
-{%- for enum in group.attributes | sort(attribute="name") %}
-{%- if enum.type is mapping -%}{{ enums.table(enum, notes) }}{% endif %}
-{%- endfor -%}
+{{ notes.render() }}{{ enums.tables(group.attributes, notes)}}
{%- endfor -%}
diff --git a/templates/registry/markdown/attribute_table.j2 b/templates/registry/markdown/attribute_table.j2
index b3bc133a86..b2a9555ce5 100644
--- a/templates/registry/markdown/attribute_table.j2
+++ b/templates/registry/markdown/attribute_table.j2
@@ -11,5 +11,5 @@
| Key | Stability | [Requirement Level](https://opentelemetry.io/docs/specs/semconv/general/attribute-requirement-level/) | Value Type | Description | Example Values |
|---|---|---|---|---|---|
{% for attribute in filtered_attributes | attribute_sort %}| {{ attrs.name_with_link(attribute, attribute_registry_base_url, lineage_attributes) }} | {{ stability.badge(attribute.stability, attribute.deprecated, attribute.brief) | trim }} | {{ requirement.render({"level": attribute.requirement_level, "name": attrs.name(attribute)}, notes) | trim }} | {{ attrs.type(attribute) }} | {{ attribute.brief | trim }}{{ notes.add({"note": attribute.note, "name": attrs.name(attribute)}) }} | {{ examples.format(attribute) | trim }} |
-{% endfor %}{{ notes.render() }}{{ sampling.snippet(filtered_attributes, attribute_registry_base_url, lineage_attributes) }}{{ enums.tables(filtered_attributes | selectattr("type", "mapping"), notes) }}
+{% endfor %}{{ notes.render() }}{{ sampling.snippet(filtered_attributes, attribute_registry_base_url, lineage_attributes) }}{{ enums.tables(filtered_attributes, notes) }}
{% endif %}{% endmacro %}
diff --git a/templates/registry/markdown/enum_macros.j2 b/templates/registry/markdown/enum_macros.j2
index aeccdea042..61afb39efc 100644
--- a/templates/registry/markdown/enum_macros.j2
+++ b/templates/registry/markdown/enum_macros.j2
@@ -1,30 +1,40 @@
{% import 'stability.j2' as stability %}
-{% macro filter(member) %}{% if (member.deprecated is undefined or member.deprecated is none) %}{{ "True" }}{% else %}{{ "False" }}{% endif %}{% endmacro %}
-{% macro table(enum, notes) %}
----
+{% macro table(enum, notes) %}| Value | Description | Stability |
+|---|---|---|
+{% for espec in enum.type.members | rejectattr("deprecated") | sort(attribute='value') %}| `{{ espec.value }}` | {{ (espec.brief or espec.id) | trim }}{{ notes.add({"note": espec.note}) }} | {{ stability.badge(espec.stability, espec.deprecated, espec.brief) }} |
+{% endfor %}{{ notes.render() }}{{ generate_deprecated(enum, enum.type.members | selectattr("deprecated"), notes) }}{% endmacro %}
+{% macro tables(enums, notes) -%}
+{% for enum in enums | selectattr("type", "mapping") | sort(attribute="name") -%}{{"\n"}}---
`{{enum.name}}` 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 |
-|---|---|---|
-{% for espec in enum.type.members | sort(attribute='value') %}
-{%- if filter(espec) == "True" -%}
-| `{{ espec.value }}` | {{ (espec.brief or espec.id) | trim }}{{ notes.add({"note": espec.note}) }} | {{ stability.badge(espec.stability, espec.deprecated, espec.brief) }} |
-{% endif %}{% endfor %}{{ notes.render() }}{% endmacro %}
-{% macro tables(enums, notes) -%}
-{% for enum in enums | sort(attribute="name") -%}
-{{ table(enum, notes) -}}
-{% endfor %}{% endmacro %}
+{% if enum.deprecated %}{{generate_deprecated(enum, enum.type.members, notes)}}{%else%}{{ table(enum, notes) -}}{% endif %}{% endfor %}{% endmacro %}
{% macro field_table(enum, notes) %}
`{{enum.id}}` 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 |
|---|---|---|
-{% for espec in enum.members | sort(attribute='value') %}
-{%- if filter(espec) == "True" -%}
-| `{{ espec.value }}` | {{ (espec.brief or espec.id) | trim }}{{ notes.add({"note": espec.note}) }} | {{ stability.badge(espec.stability, espec.deprecated, espec.brief) }} |
-{% endif %}{% endfor %}{{ notes.render() }}{% endmacro %}
+{% for espec in enum.members | sort(attribute='value') %}| `{{ espec.value }}` | {{ (espec.brief or espec.id) | trim }}{{ notes.add({"note": espec.note}) }} | {{ stability.badge(espec.stability, espec.deprecated, espec.brief) }} |
+{% endfor %}{{ notes.render() }}{% endmacro %}
{% macro field_tables(enums, notes) -%}
{% for enum in enums | sort(attribute="id") -%}
{{ field_table(enum, notes) -}}
-{% endfor %}{% endmacro %}
\ No newline at end of file
+{% endfor %}{% endmacro %}
+
+{#- Macro for creating deprecated enum member table -#}
+{% macro generate_deprecated(enum, members, notes) %}{% set filtered_members = members %}{% if (filtered_members is defined) and (filtered_members | length > 0) %}{% if enum.deprecated is undefined %}{{"\n"}}{%endif%}
+Deprecated Values:
+
+| Value | Description | Deprecation Explanation |
+|---|---|---|
+{% for member in filtered_members | sort(attribute='value') %}| `{{ member.value }}` | {{ (member.brief or member.id) | trim }}{{ notes.add({"note": member.note}) }} | {{deprecation_reason(enum, member) | trim}} |
+{% endfor %}{{ notes.render() }}
+
+{% endif %}{% endmacro %}
+
+{% macro deprecation_reason(enum, member)%}
+{% if member.deprecated and member.deprecated.reason == "renamed" %} Use `{{member.deprecated.renamed_to}}` value {% if enum.deprecated and enum.deprecated.reason == "renamed"%} for `{{enum.deprecated.renamed_to}}` attribute {% endif %} instead.
+{% elif member.deprecated %} {{member.deprecated.note}}
+{% elif enum.deprecated.reason == "renamed" %} Use `{{member.value}}` value for `{{enum.deprecated.renamed_to}}` attribute instead.
+{% else %}{{enum.deprecated.note}}{% endif %}
+{% endmacro %}
\ No newline at end of file