In maven, you can only use a profile defined at the parent level in your child pom, if you can only activate it at built time by passing -D{activation.property}=value or -P{profile.id/s} .
You cannot define a profile in your parent and try it to activate in your child pom as profile can not be inherited(you are not even trying to activate in the child pom in your case as per your example).
in another word,unless the profile is activate by default maven doesn't know about it (you might be tempted to activate everything by default in your case, but bear in mind only one profile can be activate by default at the time)
your problem is ${svnBranch} from TRUNK is only present in your child pom and has no value, therefore maven only acts on the GAV and not the classifier. and to prove that check your child's effective pom (mvn help:effective-pom). also you can check which of your profile are active and which are not (mvn help:all-profiles).
I don't think using profiles is the best approach for what you are doing. A better/simpler approach maybe be to just declare your branch names in normal properties in your parent for example.
<properties><svnBranch.lola>LOLA</svnBranch.lola><svnBranch.nba>NBA</svnBranch.nba></properties>
then your child uses as needed.
<dependencies><dependency><groupId>com.mycompany</groupId><artifactId>olb-services</artifactId><version>${module.olb-services.dependency.version}</version><classifier>${svnBranch.lola}</classifier></dependency><dependency><groupId>com.mycompany</groupId><artifactId>core-services</artifactId><version>${module.core-services.dependency.version}</version><classifier>${svnBranch.nba}</classifier></dependency></dependencies>