diff --git a/src/Project.Tests/DefaultControllerTests.cs b/src/Project.Tests/DefaultControllerTests.cs
index 146d7570c8925290090f524c505333113217e9ac..23a03e8ecc96c23982af9dd2852cde5520bc1ff9 100644
--- a/src/Project.Tests/DefaultControllerTests.cs
+++ b/src/Project.Tests/DefaultControllerTests.cs
@@ -46,7 +46,8 @@ namespace Coscine.Api.Project.Tests
             DisciplineModel disciplineModel = new DisciplineModel();
             Discipline = new Discipline()
             {
-                DisplayName = "TestDiscipline",
+                DisplayNameDe = "TestDiscipline",
+                DisplayNameEn = "TestDiscipline",
                 Url = "http://rwth-aachen.de"
             };
             disciplineModel.Insert(Discipline);
diff --git a/src/Project.Tests/ProjectControllerTests.cs b/src/Project.Tests/ProjectControllerTests.cs
index d58925000986501d2e1309460d8766664cde61ec..d7792930d0b013539f663ba38f92307e765851e7 100644
--- a/src/Project.Tests/ProjectControllerTests.cs
+++ b/src/Project.Tests/ProjectControllerTests.cs
@@ -105,7 +105,7 @@ namespace Coscine.Api.Project.Tests
         public void TestControllerStore()
         {
             ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId", 
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayName) },
+                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
                                                                 new List<InstituteObject>() { new InstituteObject(Institute.Id, Institute.IKZ, Institute.DisplayName) },
                                                                 new VisibilityObject(Visibility.Id, Visibility.DisplayName));
 
@@ -140,7 +140,7 @@ namespace Coscine.Api.Project.Tests
         public void TestControllerDelete()
         {
             ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayName) },
+                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
                                                                 new List<InstituteObject>() { new InstituteObject(Institute.Id, Institute.IKZ, Institute.DisplayName) },
                                                                 new VisibilityObject(Visibility.Id, Visibility.DisplayName));
 
@@ -174,7 +174,7 @@ namespace Coscine.Api.Project.Tests
         public void TestControllerDeleteWithSubProjects()
         {
             ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayName) },
+                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
                                                                 new List<InstituteObject>() { new InstituteObject(Institute.Id, Institute.IKZ, Institute.DisplayName) },
                                                                 new VisibilityObject(Visibility.Id, Visibility.DisplayName));
 
@@ -189,7 +189,7 @@ namespace Coscine.Api.Project.Tests
             stream.Close();
 
             newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayName) },
+                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
                                                                 new List<InstituteObject>() { new InstituteObject(Institute.Id, Institute.IKZ, Institute.DisplayName) },
                                                                 new VisibilityObject(Visibility.Id, Visibility.DisplayName),
                                                                 createdProjectObject.Id);
@@ -217,7 +217,7 @@ namespace Coscine.Api.Project.Tests
         public void TestControllerStoreWithSubProject()
         {
             ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                    new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayName) },
+                                                                    new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
                                                                     new List<InstituteObject>() { new InstituteObject(Institute.Id, Institute.IKZ, Institute.DisplayName) },
                                                                     new VisibilityObject(Visibility.Id, Visibility.DisplayName));
 
@@ -229,7 +229,7 @@ namespace Coscine.Api.Project.Tests
             ProjectObject createdProjectObject = (ProjectObject)okObjectResult.Value;
 
             ProjectObject newSubProjectObject = new ProjectObject(Guid.NewGuid(), "NewSubProject", "NewDisplayNameSub", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                        new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayName) },
+                                                                        new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
                                                                         new List<InstituteObject>() { new InstituteObject(Institute.Id, Institute.IKZ, Institute.DisplayName) },
                                                                         new VisibilityObject(Visibility.Id, Visibility.DisplayName), 
                                                                         createdProjectObject.Id);
diff --git a/src/Project.Tests/ResourceControllerTests.cs b/src/Project.Tests/ResourceControllerTests.cs
index 1cb88c35aa0825ce6ccd09e8a880c8b99ed05ee7..6e5736aea49d14fd07d872fd30d63ab74fffd9df 100644
--- a/src/Project.Tests/ResourceControllerTests.cs
+++ b/src/Project.Tests/ResourceControllerTests.cs
@@ -94,7 +94,7 @@ namespace Coscine.Api.Project.Tests
                 "keys",
                 "usageR",
                 new ResourceTypeObject(Resources[0].Type.Id, Resources[0].Type.DisplayName),
-                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayName) },
+                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
                 new VisibilityObject(Visibility.Id, Visibility.DisplayName),
                 new LicenseObject(License.Id, License.DisplayName),
                 JObject.FromObject(new RDSResourceTypeObject(Guid.NewGuid(), "PITLABTTEST", "accesskey", "secretkey"))
diff --git a/src/Project/Controllers/DisciplineController.cs b/src/Project/Controllers/DisciplineController.cs
index ec9f932f55e398a0ed1b382419608f1374fdba8c..62c1ea0c994bbfb054171c03ae4986067e8a4198 100644
--- a/src/Project/Controllers/DisciplineController.cs
+++ b/src/Project/Controllers/DisciplineController.cs
@@ -26,7 +26,7 @@ namespace Coscine.Api.Project.Controllers
         {
             return Ok(_authenticator.ValidateAndExecute((user) =>
             {
-                return _disciplineModel.GetAll().Select((discipline) => new DisciplineObject(discipline.Id, discipline.Url, discipline.DisplayName));
+                return _disciplineModel.GetAll().OrderBy(discipline => discipline.DisplayNameDe.Substring(discipline.DisplayNameDe.Length - 3)).Select((discipline) => new DisciplineObject(discipline.Id, discipline.Url, discipline.DisplayNameDe, discipline.DisplayNameEn));
             }));
         }
     }
diff --git a/src/Project/Models/ProjectModel.cs b/src/Project/Models/ProjectModel.cs
index eb7680078e97f6bd03a2148b333c0a335cd317a9..97b533d40b1fb2f5f8f30922d00e65f0c11cc969 100644
--- a/src/Project/Models/ProjectModel.cs
+++ b/src/Project/Models/ProjectModel.cs
@@ -172,11 +172,11 @@ namespace Coscine.Api.Project.Models
             {
                 DisciplineModel disciplineModel = new DisciplineModel();
                 disciplines = disciplineModel.GetAllWhere((discipline) => (from relation in discipline.ProjectDisciplineDisciplineIdIds where relation.ProjectId == project.Id select relation).Any())
-                                                .Select((discipline) => new DisciplineObject(discipline.Id, discipline.Url, discipline.DisplayName));
+                                                .Select((discipline) => new DisciplineObject(discipline.Id, discipline.Url, discipline.DisplayNameDe, discipline.DisplayNameEn));
             }
             else
             {
-                disciplines = project.ProjectDisciplineProjectIdIds.Select((discipline) => new DisciplineObject(discipline.Discipline.Id, discipline.Discipline.Url, discipline.Discipline.DisplayName));
+                disciplines = project.ProjectDisciplineProjectIdIds.Select((discipline) => new DisciplineObject(discipline.Discipline.Id, discipline.Discipline.Url, discipline.Discipline.DisplayNameDe, discipline.Discipline.DisplayNameEn));
             }
             IEnumerable<InstituteObject> institutes = new List<InstituteObject>();
             if (project.ProjectInstituteProjectIdIds == null)
diff --git a/src/Project/Models/ResourceModel.cs b/src/Project/Models/ResourceModel.cs
index ae1b6d701c84acaf25d7e2bf2b0aa7108bbd75f2..e273892ad69d2e8574dcfcb4eb88f4610014d4f6 100644
--- a/src/Project/Models/ResourceModel.cs
+++ b/src/Project/Models/ResourceModel.cs
@@ -234,7 +234,7 @@ namespace Coscine.Api.Project.Models
                             (from relation in discipline.ResourceDisciplineDisciplineIdIds
                              where relation.ResourceId == resource.Id
                              select relation).Any())
-                            .Select((discipline) => new DisciplineObject(discipline.Id, discipline.Url, discipline.DisplayName));
+                            .Select((discipline) => new DisciplineObject(discipline.Id, discipline.Url, discipline.DisplayNameDe, discipline.DisplayNameEn));
 
             if (resource.Visibility == null && resource.VisibilityId != null)
             {
diff --git a/src/Project/ReturnObjects/DisciplineObject.cs b/src/Project/ReturnObjects/DisciplineObject.cs
index 9352f5e840945dbb758fce21285da3a90e558fbf..5a2fed7b9ff54a4dbeed030401d239467f7f31d6 100644
--- a/src/Project/ReturnObjects/DisciplineObject.cs
+++ b/src/Project/ReturnObjects/DisciplineObject.cs
@@ -13,13 +13,16 @@ namespace Coscine.Api.Project.ReturnObjects
         public Guid Id { get; set; }
 
         public string Url { get; set; }
-        public string DisplayName { get; set; }
+        public string DisplayNameDe { get; set; }
 
-        public DisciplineObject(Guid id, string url, string displayName)
+        public string DisplayNameEn { get; set; }
+
+        public DisciplineObject(Guid id, string url, string displayNameDe, string displayNameEn)
         {
             Id = id;
             Url = url;
-            DisplayName = displayName;
+            DisplayNameDe = displayNameDe;
+            DisplayNameEn = displayNameEn;
         }
     }
 }