<?xml version="1.0" encoding="utf-8"?>
        <rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" version="2.0">
        <channel>
        <title>Macaw Solutions Factory Usage</title><description>Macaw Solutions Factory Usage Feed Informer</description><image>
            <url>http://feed.informer.com/images/fd.gif</url>
            <title>Powered By Feed Informer</title>
            <link>http://feed.informer.com/</link>
            </image>
        <link>http://app.feed.informer.com/digest3/R4XHTECVNB.html</link>
        <copyright>Respective post owners and feed distributors</copyright>
        <generator>http://feed.informer.com/</generator>

<item>
	<title>How to setup BizTalk 2009 BAM Portal on a 64 Bit OS in IIS 7</title>
	<description>I just finished setting up BizTalk 2009 (Developer Edition) on a W2008R2 x64 machine with the following components: Initially, the BizTalk Server Configuration utility failed to install the BAM portal. The error log reported that IIS was in 64 bit mode where 32 bit mode was required. MSDN guidance on configuring the BAM Portal said [...]</description>
	<link>http://vincenth.net/blog/archive/2009/11/17/how-to-setup-biztalk-2009-bam-portal-on-a-64-bit-os-in-iis-7.aspx</link>
	<source url="http://vincenth.net/blog/archive/category/factory/usage/feed/rss/">VincentH on .NET &amp;#187; Solutions Factory Usage</source>
	<guid isPermaLink="false">http://vincenth.net/blog/archive/2009/11/17/how-to-setup-biztalk-2009-bam-portal-on-a-64-bit-os-in-iis-7.aspx?</guid>
	<pubDate>Tue, 15 May 2012 09:13 GMT</pubDate>

</item>

<item>
	<title>Managing Environment-Specific web.config, app.config and EntLib Config Files</title>
	<description>When you need to deploy a solution to multiple environments (e.g. separate Development, Test, Acceptation and Production or DTAP environments), you often have a set of environment-specific settings that you need to manage. Since version 2.1 the Macaw Solutions Factory supports environment-specific web.config, app.config and EntLib config files. Recommendations Managing environment specific settings is risky, [...]</description>
	<link>http://vincenth.net/blog/archive/2009/11/26/managing-environment-specific-web-config-app-config-and-entlib-config-files.aspx</link>
	<source url="http://vincenth.net/blog/archive/category/factory/usage/feed/rss/">VincentH on .NET &amp;#187; Solutions Factory Usage</source>
	<guid isPermaLink="false">http://vincenth.net/blog/archive/2009/11/26/managing-environment-specific-web-config-app-config-and-entlib-config-files.aspx?</guid>
	<pubDate>Tue, 15 May 2012 09:13 GMT</pubDate>

</item>

<item>
	<title>SharePoint 2010 Replaceable Parameter, some observations…</title>
	<description>&lt;p&gt;SharePoint Tools for Visual Studio 2010 provides a rudimentary mechanism for replaceable parameters that you can use in files that are not compiled, like ascx files and your project property settings. The basics on this can be found in the documentation at &lt;a title="http://msdn.microsoft.com/en-us/library/ee231545.aspx" href="http://msdn.microsoft.com/en-us/library/ee231545.aspx"&gt;http://msdn.microsoft.com/en-us/library/ee231545.aspx&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;There are some quirks however. For example:&lt;/p&gt;  &lt;p&gt;My Package name is &lt;strong&gt;MacawMastSP2010Templates&lt;/strong&gt;, as defined in my Package properties:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/soever/image_723111E6.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://weblogs.asp.net/blogs/soever/image_thumb_34378128.png" width="443" height="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I want to use the $SharePoint.Package.Name$ replaceable parameter in my feature properties. But this parameter does not work in the “Deployment Path” property, while other parameters work there, while it works in the “Image Url” property. It just does not get expanded. So I had to resort to explicitly naming the first path of the deployment path:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/soever/image_537A27FB.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://weblogs.asp.net/blogs/soever/image_thumb_31252333.png" width="744" height="353" /&gt;&lt;/a&gt; :&lt;/p&gt;  &lt;p&gt;You also see a special property for the “Receiver Class” in the format&lt;strong&gt; $SharePoint.Type.&lt;GUID&gt;.FullName$&lt;/strong&gt;. The documentation gives the following description:&lt;em&gt;The full name of the type matching the GUID in the token. The format of the GUID is lowercase and corresponds to the Guid.ToString(“D”) format (that is, xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Not very clear. After some searching it happened to be the guid as declared in my feature receiver code:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/soever/image_27CBEEB0.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://weblogs.asp.net/blogs/soever/image_thumb_328BD6B6.png" width="874" height="203" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In other properties you see a different set of replaceable parameters:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/soever/image_2689E682.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://weblogs.asp.net/blogs/soever/image_thumb_1F6D3ABB.png" width="696" height="275" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;We use a similar mechanism for replaceable parameter for years in our &lt;a href="http://solutionsfactory.macaw.nl" target="_blank"&gt;Macaw Solutions Factory&lt;/a&gt; for SharePoint 2007 development, where each replaceable parameter is a PowerShell function. This provides so much more power.&lt;/p&gt;  &lt;p&gt;For example in a feature declaration we can say:&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:bca164da-5dca-4dd7-baf9-ef120ebc55d2" class="wlWriterEditableSmartContent"&gt; &lt;div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt"&gt; &lt;div style="background: #000080; color: #fff; font-family: Verdana, Tahoma, Arial, sans-serif; font-weight: bold; padding: 2px 5px"&gt;Code Snippet&lt;/div&gt; &lt;div style="background: #ddd; max-height: 400px; overflow: auto"&gt; &lt;ol style="background: #ffffff; margin: 0 0 0 2.5em; padding: 0 0 0 5px;"&gt; &lt;li&gt;&lt;span style="color:#0000ff"&gt;&lt;?&lt;/span&gt;&lt;span style="color:#a31515"&gt;xml&lt;/span&gt;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;version&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;1.0&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;encoding&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;utf-8&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt; ?&gt;&lt;/span&gt;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;&lt;span style="color:#0000ff"&gt;&lt;!--&lt;/span&gt;&lt;span style="color:#008000"&gt; Template expansion&lt;/span&gt;&lt;/li&gt; &lt;li&gt;&lt;span style="color:#008000"&gt;      [[ProductDependency]] -&gt; Wss3 or Moss2007&lt;/span&gt;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    &lt;span style="color:#008000"&gt; [[FeatureReceiverAssemblySignature]] -&gt; for example: Macaw.Mast.Wss3.Templates.SharePoint.Features, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6e9d15db2e2a0be5&lt;/span&gt;&lt;/li&gt; &lt;li&gt;    &lt;span style="color:#008000"&gt; [[FeatureReceiverClass]] -&gt; for example: Macaw.Mast.Wss3.Templates.SharePoint.Features.SampleFeature.FeatureReceiver.SampleFeatureFeatureReceiver&lt;/span&gt;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;&lt;span style="color:#0000ff"&gt;--&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;&lt;span style="color:#0000ff"&gt;&lt;&lt;/span&gt;&lt;span style="color:#a31515"&gt;Feature&lt;/span&gt;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;Id&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;[[$Feature.SampleFeature.ID]]&lt;/span&gt;&quot;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;Title&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;MAST [[$MastSolutionName]] Sample Feature&lt;/span&gt;&quot;&lt;/li&gt; &lt;li&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;Description&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;The MAST [[$MastSolutionName]] Sample Feature, where all possible elements in a feature are showcased&lt;/span&gt;&quot;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;Version&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;1.0.0.0&lt;/span&gt;&quot;&lt;/li&gt; &lt;li&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;Scope&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;Site&lt;/span&gt;&quot;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;Hidden&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;FALSE&lt;/span&gt;&quot;&lt;/li&gt; &lt;li&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;ImageUrl&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;[[FeatureImage]]&lt;/span&gt;&quot;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;ReceiverAssembly&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;[[FeatureReceiverAssemblySignature]]&lt;/span&gt;&quot;&lt;/li&gt; &lt;li&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;ReceiverClass&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;[[FeatureReceiverClass]]&lt;/span&gt;&quot;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;  &lt;span style="color:#0000ff"&gt;&lt;/span&gt;&lt;span style="color:#ff0000"&gt;xmlns&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;http://schemas.microsoft.com/sharepoint/&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;    &lt;span style="color:#0000ff"&gt;&lt;&lt;/span&gt;&lt;span style="color:#a31515"&gt;ElementManifests&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&gt;&lt;/span&gt;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        &lt;span style="color:#0000ff"&gt;&lt;&lt;/span&gt;&lt;span style="color:#a31515"&gt;ElementManifest&lt;/span&gt;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;Location&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;ExampleCustomActions.xml&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt; /&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;        &lt;span style="color:#0000ff"&gt;&lt;&lt;/span&gt;&lt;span style="color:#a31515"&gt;ElementManifest&lt;/span&gt;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;Location&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;ExampleSiteColumns.xml&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt; /&gt;&lt;/span&gt;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        &lt;span style="color:#0000ff"&gt;&lt;&lt;/span&gt;&lt;span style="color:#a31515"&gt;ElementManifest&lt;/span&gt;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;Location&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;ExampleContentTypes.xml&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt; /&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;        &lt;span style="color:#0000ff"&gt;&lt;&lt;/span&gt;&lt;span style="color:#a31515"&gt;ElementManifest&lt;/span&gt;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;Location&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;ExampleDocLib.xml&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt; /&gt;&lt;/span&gt;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        &lt;span style="color:#0000ff"&gt;&lt;&lt;/span&gt;&lt;span style="color:#a31515"&gt;ElementManifest&lt;/span&gt;&lt;span style="color:#0000ff"&gt; &lt;/span&gt;&lt;span style="color:#ff0000"&gt;Location&lt;/span&gt;&lt;span style="color:#0000ff"&gt;=&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt;ExampleMasterPages.xml&lt;/span&gt;&quot;&lt;span style="color:#0000ff"&gt; /&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;&amp;nbsp;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        &lt;span style="color:#0000ff"&gt;&lt;!--&lt;/span&gt;&lt;span style="color:#008000"&gt; Element files &lt;/span&gt;&lt;span style="color:#0000ff"&gt;--&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;        [[GenerateXmlNodesForFiles -path &amp;#39;ExampleDocLib&amp;#92;*.*&amp;#39; -node &amp;#39;ElementFile&amp;#39; -attributes @{Location = { RelativePathToExpansionSourceFile -path $_ }}]]&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        [[GenerateXmlNodesForFiles -path &amp;#39;ExampleMasterPages&amp;#92;*.*&amp;#39; -node &amp;#39;ElementFile&amp;#39; -attributes @{Location = { RelativePathToExpansionSourceFile -path $_ }}]]&lt;/li&gt; &lt;li&gt;        [[GenerateXmlNodesForFiles -path &amp;#39;Resources&amp;#92;*.resx&amp;#39; -node &amp;#39;ElementFile&amp;#39; -attributes @{Location = { RelativePathToExpansionSourceFile -path $_ }}]]&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    &lt;span style="color:#0000ff"&gt;&lt;/&lt;/span&gt;&lt;span style="color:#a31515"&gt;ElementManifests&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&gt;&lt;/span&gt;&lt;/li&gt; &lt;li&gt;&lt;span style="color:#0000ff"&gt;&lt;/&lt;/span&gt;&lt;span style="color:#a31515"&gt;Feature&lt;/span&gt;&lt;span style="color:#0000ff"&gt;&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt;  &lt;p&gt;We have a solution level PowerShell script file named &lt;strong&gt;TemplateExpansionConfiguration.ps1 &lt;/strong&gt;where we declare our variables (starting with a $) and include helper functions:&lt;/p&gt;  &lt;p&gt;   &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:9ce6104f-a9aa-4a17-a79f-3a39532ebf7c:5f421906-f1d2-4faf-9455-5563dd93acd9" class="wlWriterEditableSmartContent"&gt; &lt;div style="border: #000080 1px solid; color: #000; font-family: 'Courier New', Courier, Monospace; font-size: 10pt"&gt; &lt;div style="background: #000080; color: #fff; font-family: Verdana, Tahoma, Arial, sans-serif; font-weight: bold; padding: 2px 5px"&gt;Code Snippet&lt;/div&gt; &lt;div style="background: #ddd; max-height: 300px; overflow: auto"&gt; &lt;ol style="background: #ffffff; margin: 0 0 0 2.5em; padding: 0 0 0 5px;"&gt; &lt;li&gt;# ==============================================================================================&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# NAME: product:&amp;#92;src&amp;#92;Wss3&amp;#92;Templates&amp;#92;TemplateExpansionConfiguration.ps1&lt;/li&gt; &lt;li&gt;# &lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# AUTHOR: Serge van den Oever, Macaw&lt;/li&gt; &lt;li&gt;# DATE  : May 24, 2007&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# &lt;/li&gt; &lt;li&gt;# COMMENT: &lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# Nota bene: define variable and function definitions global to be visible during template expansion.&lt;/li&gt; &lt;li&gt;# &lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# ==============================================================================================&lt;/li&gt; &lt;li&gt;Set-PSDebug -strict -trace 0 #variables must have value before usage&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;$global:ErrorActionPreference = &amp;#39;Stop&amp;#39; # Stop on errors &lt;/li&gt; &lt;li&gt;$global:VerbosePreference = &amp;#39;Continue&amp;#39; # set to SilentlyContinue to get no verbose output&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;&amp;nbsp;&lt;/li&gt; &lt;li&gt;# Load template expansion utility functions&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;. product:&amp;#92;tools&amp;#92;Wss3&amp;#92;MastDeploy&amp;#92;TemplateExpansionUtil.ps1&lt;/li&gt; &lt;li&gt;&amp;nbsp;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# If exists add solution expansion utility functions&lt;/li&gt; &lt;li&gt;$solutionTemplateExpansionUtilFile = $MastSolutionDir + &quot;&amp;#92;TemplateExpansionUtil.ps1&quot;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;if ((Test-Path -Path $solutionTemplateExpansionUtilFile))&lt;/li&gt; &lt;li&gt;{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    . $solutionTemplateExpansionUtilFile&lt;/li&gt; &lt;li&gt;}&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# ==============================================================================================&lt;/li&gt; &lt;li&gt;&amp;nbsp;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# Expected: $Solution.ID; Unique GUID value identifying the solution (DON&amp;#39;T INCLUDE BRACKETS).&lt;/li&gt; &lt;li&gt;# function: guid:UpperCaseWithoutCurlies -guid &amp;#39;{...}&amp;#39; ensures correct syntax&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;$global:Solution = @{&lt;/li&gt; &lt;li&gt;    ID = GuidUpperCaseWithoutCurlies -guid &amp;#39;{d366ced4-0b98-4fa8-b256-c5a35bcbc98b}&amp;#39;;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;}&lt;/li&gt; &lt;li&gt;&amp;nbsp;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;#  DON&amp;#39;T INCLUDE BRACKETS for feature id&amp;#39;s!!!&lt;/li&gt; &lt;li&gt;# function: GuidUpperCaseWithoutCurlies -guid &amp;#39;{...}&amp;#39; ensures correct syntax&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;$global:Feature = @{&lt;/li&gt; &lt;li&gt;    SampleFeature = @{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        ID = GuidUpperCaseWithoutCurlies -guid &amp;#39;{35de59f4-0c8e-405e-b760-15234fe6885c}&amp;#39;;&lt;/li&gt; &lt;li&gt;    }&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;}&lt;/li&gt; &lt;li&gt;&amp;nbsp;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;$global:SiteDefinition = @{&lt;/li&gt; &lt;li&gt;    TemplateBlankSite = @{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        ID = &amp;#39;12346&amp;#39;;&lt;/li&gt; &lt;li&gt;    }&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;}&lt;/li&gt; &lt;li&gt;&amp;nbsp;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;# To inherit from this content type add the delimiter (00) and then your own guid&lt;/li&gt; &lt;li&gt;# ID: &lt;base&gt;00&lt;newguid&gt;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;$global:ContentType = @{&lt;/li&gt; &lt;li&gt;    ExampleContentType = @{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        ID = &amp;#39;0x01008e5e167ba2db4bfeb3810c4a7ff72913&amp;#39;;&lt;/li&gt; &lt;li&gt;    }&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;}&lt;/li&gt; &lt;li&gt;&amp;nbsp;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;#  INCLUDE BRACKETS for column id&amp;#39;s and make them LOWER CASE!!!&lt;/li&gt; &lt;li&gt;# function: GuidLowerCaseWithCurlies -guid &amp;#39;{...}&amp;#39; ensures correct syntax&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;$global:SiteColumn = @{&lt;/li&gt; &lt;li&gt;    ExampleChoiceField = @{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        ID = GuidLowerCaseWithCurlies -guid &amp;#39;{69d38ce4-2771-43b4-a861-f14247885fe9}&amp;#39;;&lt;/li&gt; &lt;li&gt;    };&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    ExampleBooleanField = @{&lt;/li&gt; &lt;li&gt;        ID = GuidLowerCaseWithCurlies -guid &amp;#39;{76f794e6-f7bd-490e-a53e-07efdf967169}&amp;#39;;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    };&lt;/li&gt; &lt;li&gt;    ExampleDateTimeField = @{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        ID = GuidLowerCaseWithCurlies -guid &amp;#39;{6f176e6e-22d2-453a-8dad-8ab17ac12387}&amp;#39;;&lt;/li&gt; &lt;li&gt;    };&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    ExampleNumberField = @{&lt;/li&gt; &lt;li&gt;        ID = GuidLowerCaseWithCurlies -guid &amp;#39;{6026947f-f102-436b-abfd-fece49495788}&amp;#39;;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    };&lt;/li&gt; &lt;li&gt;    ExampleTextField = @{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        ID = GuidLowerCaseWithCurlies -guid &amp;#39;{23ca1c29-5ef0-4b3d-93cd-0d1d2b6ddbde}&amp;#39;;&lt;/li&gt; &lt;li&gt;    };&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    ExampleUserField = @{&lt;/li&gt; &lt;li&gt;        ID = GuidLowerCaseWithCurlies -guid &amp;#39;{ee55b9f1-7b7c-4a7e-9892-3e35729bb1a5}&amp;#39;;&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;    };&lt;/li&gt; &lt;li&gt;    ExampleNoteField = @{&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;        ID = GuidLowerCaseWithCurlies -guid &amp;#39;{f9aa8da3-1f30-48a6-a0af-aa0a643d9ed4}&amp;#39;;&lt;/li&gt; &lt;li&gt;    };&lt;/li&gt; &lt;li style="background: #f3f3f3"&gt;}&lt;/li&gt; &lt;/ol&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/p&gt;  &lt;p&gt;This gives so much more possibilities, like for example the elements file expansion where a PowerShell function iterates through a folder and generates the required XML nodes.&lt;/p&gt;  &lt;p&gt;I think I will bring back this mechanism, so it can work together with the built-in replaceable parameters, there are hooks to define you custom replacements as described by Waldek in &lt;a href="http://blog.mastykarz.nl/including-additional-assemblies-wsp-visual-studio-sharepoint-development-tools/" target="_blank"&gt;this&lt;/a&gt; blog post.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7522196" width="1" height="1"&gt;</description>
	<link>http://weblogs.asp.net/soever/archive/2010/06/08/sharepoint-2010-replaceable-parameter-some-observations.aspx</link>
	<source url="http://weblogs.asp.net/soever/rss.aspx?Tags=SolutionsFactory-Usage&amp;AndTags=1">Serge van den Oever [Macaw] : SolutionsFactory-Usage</source>
	<guid isPermaLink="false">http://weblogs.asp.net/soever/archive/2010/06/08/sharepoint-2010-replaceable-parameter-some-observations.aspx?</guid>
	<pubDate>Tue, 08 Jun 2010 14:28 GMT</pubDate>

</item>


</channel></rss>


