Clarification on the Placement of CodeGroup Elements for Extensions

Well, I've been away for a while, lots of stuff going on at work and home. The next series of posts are going to be related to corrections and/or updates to Reporting Services Programming documentation. The first subject I would like to cover is the placement of CodeGroup elements when granting permissions to external components (extensions and custom assemblies) in Reporting Services. Books Online is not specific about the placement of code group entries for extensions or custom assemblies. The placement of CodeGroup elements in a security policy file is important. For extensions and custom assemblies that you develop, it is recommended that you place your custom code groups directly below the existing entry for the URL membership "$CodeGen$/*", as indicated by the following:

<CodeGroup
class="UnionCodeGroup"
version="1"
PermissionSetName="FullTrust">
<IMembershipCondition
class="UrlMembershipCondition"
version="1"
Url="$CodeGen$/*"
/>
</CodeGroup>
<CodeGroup
class="UnionCodeGroup"
version="1"
PermissionSetName="FullTrust"
Name="MyCustomCodeGroup"
Description="Code group for my custom extension">
<IMembershipCondition class="UrlMembershipCondition"
version="1"
Url="C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer\bin\MyAssembly.dll"
/>
</CodeGroup>

Additional code groups can be added one after another.