Stanislav correctly identified a new regexp to be used.
diff --git a/extensions/indexing-sql/src/main/java/org/apache/polygene/index/sql/support/skeletons/AbstractSQLStartup.java b/extensions/indexing-sql/src/main/java/org/apache/polygene/index/sql/support/skeletons/AbstractSQLStartup.java
index e2d2cc6..6a8aa12 100644
--- a/extensions/indexing-sql/src/main/java/org/apache/polygene/index/sql/support/skeletons/AbstractSQLStartup.java
+++ b/extensions/indexing-sql/src/main/java/org/apache/polygene/index/sql/support/skeletons/AbstractSQLStartup.java
@@ -1654,9 +1654,14 @@
         + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_END )
         + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_START ) + "(.*)"
         + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_END )
-        + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_START ) + "(" + "[^"
+        + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_START )
+        + "([^"
         + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_END + DESCRIPTOR_TYPE_SEPARATOR )
-        + "]+)" + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_END ) + "$" );
+        + "]+)"
+        + "(,[^"
+        + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_END + DESCRIPTOR_TYPE_SEPARATOR )
+        + "]+)*"
+        + Pattern.quote( DESCRIPTOR_COMPONENT_SEPARATOR_END ) + "$" );
 
     protected static String compositeDescriptorToString( LayerDescriptor layer,
                                                          ModuleDescriptor module, CompositeDescriptor descriptor )