Documentation added
Minor improvements
diff --git a/sdks/dotnet/basyx-core/BaSyx.Models/Core/AssetAdministrationShell/References/IKey.cs b/sdks/dotnet/basyx-core/BaSyx.Models/Core/AssetAdministrationShell/References/IKey.cs
index c3d74d1..90596ea 100644
--- a/sdks/dotnet/basyx-core/BaSyx.Models/Core/AssetAdministrationShell/References/IKey.cs
+++ b/sdks/dotnet/basyx-core/BaSyx.Models/Core/AssetAdministrationShell/References/IKey.cs
@@ -12,14 +12,35 @@
 
 namespace BaSyx.Models.Core.AssetAdministrationShell.References
 {
+    /// <summary>
+    /// A key is a reference to an element by its id. 
+    /// </summary>
     public interface IKey
     {
+        /// <summary>
+        /// Denote which kind of entity is referenced. In case type = GlobalReference then the element is a global unique id.  
+        /// In all other cases the key references a model element of the same or of another AAS.The name of the model element is explicitly listed.
+        /// </summary>
         [DataMember(EmitDefaultValue = false, IsRequired = false, Name = "type")]
         KeyElements Type { get; }
+
+        /// <summary>
+        /// Type of the key value.In case of idType = idShort local shall be true. 
+        /// In case type=GlobalReference idType shall not be IdShort. 
+        /// </summary>
         [DataMember(EmitDefaultValue = false, IsRequired = false, Name = "idType")]
         KeyType IdType { get; }
+
+        /// <summary>
+        /// The key value, for example an IRDI if the idType=IRDI. 
+        /// </summary>
         [DataMember(EmitDefaultValue = false, IsRequired = false, Name = "value")]
         string Value { get; }
+
+        /// <summary>
+        /// Denotes if the key references a model element of the same AAS (=true) or not (=false).
+        /// In case of local = false the key may reference a model element of another AAS or an entity outside any AAS that has a global unique id. 
+        /// </summary>
         [DataMember(EmitDefaultValue = false, IsRequired = false, Name = "local")]
         bool Local { get; }
     }