diff --git a/src/Microsoft.OpenApi/Interfaces/IOpenApiAnnotatable.cs b/src/Microsoft.OpenApi/Interfaces/IMetadataContainer.cs
similarity index 71%
rename from src/Microsoft.OpenApi/Interfaces/IOpenApiAnnotatable.cs
rename to src/Microsoft.OpenApi/Interfaces/IMetadataContainer.cs
index dc1ee84a0..2d8f26220 100644
--- a/src/Microsoft.OpenApi/Interfaces/IOpenApiAnnotatable.cs
+++ b/src/Microsoft.OpenApi/Interfaces/IMetadataContainer.cs
@@ -1,4 +1,4 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
+// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
using System.Collections.Generic;
@@ -9,11 +9,11 @@ namespace Microsoft.OpenApi.Interfaces
/// Represents an Open API element that can be annotated with
/// non-serializable properties in a property bag.
///
- public interface IOpenApiAnnotatable
+ public interface IMetadataContainer
{
///
/// A collection of properties associated with the current OpenAPI element.
///
- IDictionary Annotations { get; set; }
+ IDictionary Metadata { get; set; }
}
}
diff --git a/src/Microsoft.OpenApi/Models/OpenApiDocument.cs b/src/Microsoft.OpenApi/Models/OpenApiDocument.cs
index dd85770f3..8d04814cd 100644
--- a/src/Microsoft.OpenApi/Models/OpenApiDocument.cs
+++ b/src/Microsoft.OpenApi/Models/OpenApiDocument.cs
@@ -24,7 +24,7 @@ namespace Microsoft.OpenApi.Models
///
/// Describes an OpenAPI object (OpenAPI document). See: https://spec.openapis.org
///
- public class OpenApiDocument : IOpenApiSerializable, IOpenApiExtensible, IOpenApiAnnotatable
+ public class OpenApiDocument : IOpenApiSerializable, IOpenApiExtensible, IMetadataContainer
{
///
/// Register components in the document to the workspace
@@ -109,7 +109,7 @@ public ISet? Tags
public IDictionary? Extensions { get; set; } = new Dictionary();
///
- public IDictionary? Annotations { get; set; }
+ public IDictionary? Metadata { get; set; }
///
/// Implements IBaseDocument
@@ -143,7 +143,7 @@ public OpenApiDocument(OpenApiDocument? document)
Tags = document?.Tags != null ? new HashSet(document.Tags, OpenApiTagComparer.Instance) : null;
ExternalDocs = document?.ExternalDocs != null ? new(document?.ExternalDocs) : null;
Extensions = document?.Extensions != null ? new Dictionary(document.Extensions) : null;
- Annotations = document?.Annotations != null ? new Dictionary(document.Annotations) : null;
+ Metadata = document?.Metadata != null ? new Dictionary(document.Metadata) : null;
BaseUri = document?.BaseUri != null ? document.BaseUri : new(OpenApiConstants.BaseRegistryUri + Guid.NewGuid());
}
diff --git a/src/Microsoft.OpenApi/Models/OpenApiOperation.cs b/src/Microsoft.OpenApi/Models/OpenApiOperation.cs
index 1e10f640c..2ea920640 100644
--- a/src/Microsoft.OpenApi/Models/OpenApiOperation.cs
+++ b/src/Microsoft.OpenApi/Models/OpenApiOperation.cs
@@ -16,7 +16,7 @@ namespace Microsoft.OpenApi.Models
///
/// Operation Object.
///
- public class OpenApiOperation : IOpenApiSerializable, IOpenApiExtensible, IOpenApiAnnotatable
+ public class OpenApiOperation : IOpenApiSerializable, IOpenApiExtensible, IMetadataContainer
{
///
/// Default value for .
@@ -127,7 +127,7 @@ public ISet? Tags
public IDictionary? Extensions { get; set; } = new Dictionary();
///
- public IDictionary? Annotations { get; set; }
+ public IDictionary? Metadata { get; set; }
///
/// Parameterless constructor
@@ -153,7 +153,7 @@ public OpenApiOperation(OpenApiOperation operation)
Security = operation.Security != null ? new List(operation.Security) : null;
Servers = operation.Servers != null ? new List(operation.Servers) : null;
Extensions = operation.Extensions != null ? new Dictionary(operation.Extensions) : null;
- Annotations = operation.Annotations != null ? new Dictionary(operation.Annotations) : null;
+ Metadata = operation.Metadata != null ? new Dictionary(operation.Metadata) : null;
}
///
diff --git a/test/Microsoft.OpenApi.Tests/Models/OpenApiDocumentTests.cs b/test/Microsoft.OpenApi.Tests/Models/OpenApiDocumentTests.cs
index 6c27b87ab..b286839ac 100644
--- a/test/Microsoft.OpenApi.Tests/Models/OpenApiDocumentTests.cs
+++ b/test/Microsoft.OpenApi.Tests/Models/OpenApiDocumentTests.cs
@@ -92,7 +92,7 @@ public class OpenApiDocumentTests
{
Version = "1.0.0"
},
- Annotations = new Dictionary { { "key1", "value" } },
+ Metadata = new Dictionary { { "key1", "value" } },
Components = TopLevelReferencingComponents
};
@@ -102,7 +102,7 @@ public class OpenApiDocumentTests
{
Version = "1.0.0"
},
- Annotations = new Dictionary { { "key1", "value" } },
+ Metadata = new Dictionary { { "key1", "value" } },
Components = TopLevelSelfReferencingComponentsWithOtherProperties
};
@@ -112,7 +112,7 @@ public class OpenApiDocumentTests
{
Version = "1.0.0"
},
- Annotations = new Dictionary { { "key1", "value" } },
+ Metadata = new Dictionary { { "key1", "value" } },
Components = TopLevelSelfReferencingComponents
};
@@ -489,7 +489,7 @@ public class OpenApiDocumentTests
}
}
},
- Annotations = new Dictionary { { "key1", "value" } },
+ Metadata = new Dictionary { { "key1", "value" } },
Components = AdvancedComponentsWithReference
};
@@ -865,7 +865,7 @@ public class OpenApiDocumentTests
}
}
},
- Annotations = new Dictionary { { "key1", "value" } },
+ Metadata = new Dictionary { { "key1", "value" } },
Components = AdvancedComponents
};
@@ -1024,7 +1024,7 @@ public class OpenApiDocumentTests
}
}
},
- Annotations = new Dictionary { { "key1", "value" } },
+ Metadata = new Dictionary { { "key1", "value" } },
Components = AdvancedComponents
};
@@ -1324,7 +1324,7 @@ public class OpenApiDocumentTests
}
}
},
- Annotations = new Dictionary { { "key1", "value" } },
+ Metadata = new Dictionary { { "key1", "value" } },
Components = AdvancedComponents
};
@@ -1830,7 +1830,7 @@ public void OpenApiDocumentCopyConstructorWithAnnotationsSucceeds()
{
var baseDocument = new OpenApiDocument
{
- Annotations = new Dictionary
+ Metadata = new Dictionary
{
["key1"] = "value1",
["key2"] = 2
@@ -1839,11 +1839,11 @@ public void OpenApiDocumentCopyConstructorWithAnnotationsSucceeds()
var actualDocument = new OpenApiDocument(baseDocument);
- Assert.Equal(baseDocument.Annotations["key1"], actualDocument.Annotations["key1"]);
+ Assert.Equal(baseDocument.Metadata["key1"], actualDocument.Metadata["key1"]);
- baseDocument.Annotations["key1"] = "value2";
+ baseDocument.Metadata["key1"] = "value2";
- Assert.NotEqual(baseDocument.Annotations["key1"], actualDocument.Annotations["key1"]);
+ Assert.NotEqual(baseDocument.Metadata["key1"], actualDocument.Metadata["key1"]);
}
[Fact]
diff --git a/test/Microsoft.OpenApi.Tests/Models/OpenApiOperationTests.cs b/test/Microsoft.OpenApi.Tests/Models/OpenApiOperationTests.cs
index bb615f2dd..33730484b 100644
--- a/test/Microsoft.OpenApi.Tests/Models/OpenApiOperationTests.cs
+++ b/test/Microsoft.OpenApi.Tests/Models/OpenApiOperationTests.cs
@@ -84,7 +84,7 @@ public class OpenApiOperationTests
Description = "serverDescription"
}
},
- Annotations = new Dictionary { { "key1", "value1" }, { "key2", 2 } },
+ Metadata = new Dictionary { { "key1", "value1" }, { "key2", 2 } },
};
private static OpenApiOperation _advancedOperationWithTagsAndSecurity => new()
@@ -844,7 +844,7 @@ public void OpenApiOperationCopyConstructorWithAnnotationsSucceeds()
{
var baseOperation = new OpenApiOperation
{
- Annotations = new Dictionary
+ Metadata = new Dictionary
{
["key1"] = "value1",
["key2"] = 2
@@ -853,11 +853,11 @@ public void OpenApiOperationCopyConstructorWithAnnotationsSucceeds()
var actualOperation = new OpenApiOperation(baseOperation);
- Assert.Equal(baseOperation.Annotations["key1"], actualOperation.Annotations["key1"]);
+ Assert.Equal(baseOperation.Metadata["key1"], actualOperation.Metadata["key1"]);
- baseOperation.Annotations["key1"] = "value2";
+ baseOperation.Metadata["key1"] = "value2";
- Assert.NotEqual(baseOperation.Annotations["key1"], actualOperation.Annotations["key1"]);
+ Assert.NotEqual(baseOperation.Metadata["key1"], actualOperation.Metadata["key1"]);
}
}
}
diff --git a/test/Microsoft.OpenApi.Tests/PublicApi/PublicApi.approved.txt b/test/Microsoft.OpenApi.Tests/PublicApi/PublicApi.approved.txt
index 0f0412510..a143a049d 100644
--- a/test/Microsoft.OpenApi.Tests/PublicApi/PublicApi.approved.txt
+++ b/test/Microsoft.OpenApi.Tests/PublicApi/PublicApi.approved.txt
@@ -199,9 +199,9 @@ namespace Microsoft.OpenApi.Extensions
namespace Microsoft.OpenApi.Interfaces
{
public interface IDiagnostic { }
- public interface IOpenApiAnnotatable
+ public interface IMetadataContainer
{
- System.Collections.Generic.IDictionary Annotations { get; set; }
+ System.Collections.Generic.IDictionary Metadata { get; set; }
}
public interface IOpenApiElement { }
public interface IOpenApiExtensible : Microsoft.OpenApi.Interfaces.IOpenApiElement
@@ -706,17 +706,17 @@ namespace Microsoft.OpenApi.Models
public void SerializeAsV3(Microsoft.OpenApi.Writers.IOpenApiWriter writer) { }
public void SerializeAsV31(Microsoft.OpenApi.Writers.IOpenApiWriter writer) { }
}
- public class OpenApiDocument : Microsoft.OpenApi.Interfaces.IOpenApiAnnotatable, Microsoft.OpenApi.Interfaces.IOpenApiElement, Microsoft.OpenApi.Interfaces.IOpenApiExtensible, Microsoft.OpenApi.Interfaces.IOpenApiSerializable
+ public class OpenApiDocument : Microsoft.OpenApi.Interfaces.IMetadataContainer, Microsoft.OpenApi.Interfaces.IOpenApiElement, Microsoft.OpenApi.Interfaces.IOpenApiExtensible, Microsoft.OpenApi.Interfaces.IOpenApiSerializable
{
public OpenApiDocument() { }
public OpenApiDocument(Microsoft.OpenApi.Models.OpenApiDocument? document) { }
- public System.Collections.Generic.IDictionary? Annotations { get; set; }
public System.Uri BaseUri { get; }
public Microsoft.OpenApi.Models.OpenApiComponents? Components { get; set; }
public System.Collections.Generic.IDictionary? Extensions { get; set; }
public Microsoft.OpenApi.Models.OpenApiExternalDocs? ExternalDocs { get; set; }
public Microsoft.OpenApi.Models.OpenApiInfo Info { get; set; }
public System.Uri? JsonSchemaDialect { get; set; }
+ public System.Collections.Generic.IDictionary? Metadata { get; set; }
public Microsoft.OpenApi.Models.OpenApiPaths Paths { get; set; }
public System.Collections.Generic.IList? Security { get; set; }
public System.Collections.Generic.IList? Servers { get; set; }
@@ -894,17 +894,17 @@ namespace Microsoft.OpenApi.Models
public void SerializeAsV3(Microsoft.OpenApi.Writers.IOpenApiWriter writer) { }
public void SerializeAsV31(Microsoft.OpenApi.Writers.IOpenApiWriter writer) { }
}
- public class OpenApiOperation : Microsoft.OpenApi.Interfaces.IOpenApiAnnotatable, Microsoft.OpenApi.Interfaces.IOpenApiElement, Microsoft.OpenApi.Interfaces.IOpenApiExtensible, Microsoft.OpenApi.Interfaces.IOpenApiSerializable
+ public class OpenApiOperation : Microsoft.OpenApi.Interfaces.IMetadataContainer, Microsoft.OpenApi.Interfaces.IOpenApiElement, Microsoft.OpenApi.Interfaces.IOpenApiExtensible, Microsoft.OpenApi.Interfaces.IOpenApiSerializable
{
public const bool DeprecatedDefault = false;
public OpenApiOperation() { }
public OpenApiOperation(Microsoft.OpenApi.Models.OpenApiOperation operation) { }
- public System.Collections.Generic.IDictionary? Annotations { get; set; }
public System.Collections.Generic.IDictionary? Callbacks { get; set; }
public bool Deprecated { get; set; }
public string? Description { get; set; }
public System.Collections.Generic.IDictionary? Extensions { get; set; }
public Microsoft.OpenApi.Models.OpenApiExternalDocs? ExternalDocs { get; set; }
+ public System.Collections.Generic.IDictionary? Metadata { get; set; }
public string? OperationId { get; set; }
public System.Collections.Generic.IList? Parameters { get; set; }
public Microsoft.OpenApi.Models.Interfaces.IOpenApiRequestBody? RequestBody { get; set; }