diff --git a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java
index 44f344c..4a53343 100644
--- a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java
+++ b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/ComponentManager.java
@@ -332,7 +332,8 @@
         String serviceFilter = parser.getString(DescriptorParam.filter, null);
         Class<?> aspectImplementation = b.loadClass(parser.getString(DescriptorParam.impl));
         Dictionary<String, String> aspectProperties = parser.getDictionary(DescriptorParam.properties, null);
-        Service service = dm.createAspectService(serviceInterface, serviceFilter, aspectImplementation, aspectProperties);
+        int ranking = parser.getInt(DescriptorParam.ranking, 1);
+        Service service = dm.createAspectService(serviceInterface, serviceFilter, ranking, aspectImplementation, aspectProperties);
         setServiceCallbacks(service, parser);
         setServiceComposition(service, parser);
         return service;
diff --git a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DescriptorParam.java b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DescriptorParam.java
index 781e961..e51ad8d 100644
--- a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DescriptorParam.java
+++ b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DescriptorParam.java
@@ -65,7 +65,7 @@
     /* ServiceDependency attribute for the service default impl (the parsed value is a String) */
     defaultImpl,
 
-    /* ServiceDependency attribute for the required booleean (the parsed value is a String ("false"|"true") */
+    /* ServiceDependency attribute for the required boolean (the parsed value is a String ("false"|"true") */
     required,
 
     /* ServiceDependency attribute for the added callback name (the parsed value is a String) */
@@ -105,7 +105,10 @@
     adapteeFilter,
     
     /* BundleDependency attribute for the state mask bundle (the parsed value is a string) */
-    stateMask;
+    stateMask,
+    
+    /* The ranking of an aspect (the parsed value is an int) */
+    ranking;
     
     /**
      * Indicates if a given attribute is a Service attribute.
