style(help): improved doc of maven Additional_Components
@@ -19,8 +19,38 @@ The Maven Pom detector also requires either mvnw or mvn:
The Maven Pom detector runs `mvn dependency:tree` to get a list of the project's dependencies and then parses the output.
Scope inclusion/exclusion is performed during the parsing of the output of the `mvn dependency:tree` command.
-When a component of an included scope is found under a component of an excluded scope, it is added
-to the BOM under a top level placeholder component named *Additional_Components*.
+
+### Components with unknown graph locations
+
+The output of `mvn dependency:tree` does not always provide information
+on a component's positions in the dependency graph. When this information is missing,
+${solution_name} will place the component under a placeholder "component" named *Additional_Components*.
+
+For example: Imagine a project with two scopes (compile and test), two direct dependencies A and B,
+both of which depend transitively on C, and imagine we want ${solution_name} to exclude test scope from
+its output. The actual dependency graphs for this project look like:
+````
+compile scope:
+A
+\- C
+
+test scope:
+B
+\- C
+````
+
+For this project, the output of `mvn dependency:tree` may only show:
+````
+compile scope:
+A
+
+test scope:
+B
+\- C (compile)
+````
+From that output we can tell that C is part of the compile scope, but there is no information about where in the compile scope
+graph C belongs. Its position in the test scope is irrelevant since test scope is being excluded. Rather than excluding C in this case,
+${solution_name} puts it under the placeholder "component" named *Additional_Components*.
## Maven Parse detector
