<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://www.codeplex.com/rss.xsl"?><rss version="2.0"><channel><title>UriTemplate and UriPattern for simple tokenized URI building and parsing</title><link>http://www.codeplex.com/UriTemplate/Project/ProjectRss.aspx</link><description>The UriTemplate library is a simple set of code to encapsulate the building and parsing of URIs from replacement tokens. Using this couple of classes will make it easy to build RESTful URIs.</description><item><title>NEW POST: Release 1.1</title><link>http://www.codeplex.com/UriTemplate/Thread/View.aspx?ThreadId=16977</link><description>&lt;div class="wikidoc"&gt;
&lt;div class="quote"&gt;
 &lt;br /&gt;The changes look good to me.  They passed the few unit tests that I have created so far.  &lt;br /&gt; &lt;br /&gt;
&lt;/div&gt;&lt;b&gt;Thanks, released!&lt;/b&gt;&lt;br /&gt;&lt;div class="quote"&gt;
 &lt;br /&gt;I have started building a URIPatternTable to be able to perform the same function that URITemplateTable does in System.ServiceModel.Web.  Would you be interested in including it in the project?&lt;br /&gt; &lt;br /&gt;
&lt;/div&gt;&lt;b&gt;Sure, make the changes and send me a zip... if they pass snuff, I'll add you as a developer on the project and you can check-in directly...&lt;/b&gt;&lt;br /&gt;&lt;div class="quote"&gt;
 &lt;br /&gt;Also, if I were to build a bunch of unit tests, what test framework would be the most appropriate. &lt;br /&gt; &lt;br /&gt;
&lt;/div&gt;&lt;b&gt;I've been hesitant to couple any of my CodePlex projects to a specific testing framework, but Brad Wilson's new xUnit is making me consider doing so.&lt;/b&gt;&lt;br /&gt;
&lt;/div&gt;</description><author>IDisposable</author><pubDate>Sat, 27 Oct 2007 01:18:49 GMT</pubDate><guid isPermaLink="false">NEW POST: Release 1.1 20071027011849A</guid></item><item><title>COMMENTED ISSUE: meta characters are not replaced as intended</title><link>http://www.codeplex.com/UriTemplate/WorkItem/View.aspx?WorkItemId=7938</link><description>Try this test&amp;#58;&lt;br /&gt;            UriPattern p &amp;#61; UriPattern.Create&amp;#40;&amp;#34;&amp;#47;LiveContacts&amp;#47;Contacts&amp;#47;Contact&amp;#40;&amp;#123;ContactId&amp;#125;&amp;#41;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;            IDictionary&amp;#60;string, string&amp;#62; values &amp;#61; p.Parse&amp;#40;&amp;#34;&amp;#47;LiveContacts&amp;#47;Contacts&amp;#47;Contact&amp;#40;1001&amp;#41;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;            Assert.AreEqual&amp;#60;string&amp;#62;&amp;#40;&amp;#34;1001&amp;#34;, values&amp;#91;&amp;#34;ContactId&amp;#34;&amp;#93;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;It will fail because in the UriPattern.BuildRegex the code is supposed to be doing a regex replace to escape all meta characters, but it actually just attempts a string replace, which does nothing. &lt;br /&gt;&lt;br /&gt;The following lines fix the problem.&lt;br /&gt;&lt;br /&gt;private static Regex regexMetaPattern &amp;#61; new Regex&amp;#40;&amp;#64;&amp;#34;&amp;#91;&amp;#92;&amp;#92;&amp;#92;&amp;#91;&amp;#92;&amp;#93;&amp;#92;&amp;#40;&amp;#92;&amp;#41;&amp;#92;&amp;#38;&amp;#92;&amp;#94;&amp;#92;&amp;#36;&amp;#92;&amp;#63;&amp;#92;&amp;#35;&amp;#92;&amp;#43;&amp;#92;&amp;#42;&amp;#92;&amp;#124;&amp;#92;&amp;#62;&amp;#92;&amp;#60;&amp;#93;&amp;#34;, RegexOptions.Compiled&amp;#41;&amp;#59;  &amp;#47;&amp;#47; This is a regex not a string&lt;br /&gt;private static string regexMetaCharactersReplacements &amp;#61; &amp;#64;&amp;#34;&amp;#92;&amp;#36;0&amp;#34;&amp;#59;  &amp;#47;&amp;#47; Removed a slash here also&lt;br /&gt;&lt;br /&gt;In UriTemplate.BuildRegex, change the template.Replace&amp;#40;...&amp;#41; to&lt;br /&gt;template &amp;#61; regexMetaPattern.Replace&amp;#40;template,regexMetaCharactersReplacements&amp;#41; &amp;#43; &amp;#34;.&amp;#42;&amp;#34;&amp;#59;&lt;br /&gt;&lt;br /&gt;I looked at Snell&amp;#39;s original code and the bug is there also.&lt;br /&gt;Comments: ** Comment from web user: IDisposable ** &lt;p&gt;To be fair, it was my mistake in translating from the java original, since in java&amp;#39;s string class, the replaceAll method expects a regex pattern, not a raw pattern. Mea Culpa&lt;/p&gt;</description><author>IDisposable</author><pubDate>Sat, 27 Oct 2007 01:10:44 GMT</pubDate><guid isPermaLink="false">COMMENTED ISSUE: meta characters are not replaced as intended 20071027011044A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/UriTemplate/Wiki/View.aspx?title=Home&amp;version=6</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;
Project Description
&lt;/h2&gt;The UriTemplate library is a simple set of code to encapsulate the building and parsing of URIs from replacement tokens. Using this couple of classes will make it easy to build RESTful URIs.
&lt;br /&gt;&lt;h2&gt;
News
&lt;/h2&gt;&lt;a href="http://www.codeplex.com/UriTemplate/Release/ProjectReleases.aspx?ReleaseId=7958"&gt;1.1 Release&lt;/a&gt;  on 10/26/2007 to include a fix patterns with Regex meta-characters and ability to build compiled UriPatterns.&lt;br /&gt;&lt;h2&gt;
What the heck is this all about?
&lt;/h2&gt;UriTemplates are a simple way to codify the build of URI strings that follow web-optimization and RESTful principles. In short, you want URIs that are &amp;quot;hackable&amp;quot; and well formed. UriTemplates allow regular constructing and parsing through named &lt;b&gt;tokens&lt;/b&gt; that specify where logical substitutions should be performed.&lt;br /&gt; &lt;br /&gt;The idea of a UriTemplate was probably best described by Joe Gregorio in this blog posting &lt;a href="http://bitworking.org/news/URI_Templates" class="externalLink"&gt;http://bitworking.org/news/URI_Templates&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and it simply talks about using URIs patterns like &lt;span class="codeInline"&gt;http://example.org/{item}/{userid&lt;/span&gt;} into strings like &lt;span class="codeInline"&gt;http://example.org/users/1234&lt;/span&gt; and back, given a dictionary of token/value pairs where &lt;span class="codeInline"&gt;item = &amp;quot;users'&lt;/span&gt; and &lt;span class="codeInline"&gt;userid = &amp;quot;1234&amp;quot;&lt;/span&gt;. The ability to generate well-formed URIs from the dictionary, or parse them out for incoming requests lets you easily build RESTful interfaces.&lt;br /&gt; &lt;br /&gt;The desire to implement this came from the upcoming UriTemplate in .Net (currently somewhat released in the BizTalk Services SDK).&lt;br /&gt;This specific implementation of the UriTemplate &lt;b&gt;does not&lt;/b&gt; have all the cool features of the Microsoft version; rather it follows from a java class written by James Snell in a posting here &lt;a href="http://www.snellspace.com/wp/?p=467" class="externalLink"&gt;http://www.snellspace.com/wp/?p=467&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. I felt his class was just perfect in the level of functionality and simplicity. This code is essentially a C# port to .Net from his java code.&lt;br /&gt; &lt;br /&gt;I expect that in a few years, .Net developers will be broadly using the System.UriTemplate currently contained in the BizTalk SDK's Microsoft.ServiceModel.Web.dll. For those of us developers in the real world not able to deploy all these cool new &lt;i&gt;pre-beta&lt;/i&gt; bits in production, this set of code will let you develop in either the 1.1 or 2.0 framework and establish the process now.&lt;br /&gt;&lt;h2&gt;
How to use
&lt;/h2&gt;Here's the simplest possible example; a console mode application that shows how to play with &lt;span class="codeInline"&gt;UriPattern&lt;/span&gt; to extract values for the tokens and how to use &lt;span class="codeInline"&gt;UriTemplate&lt;/span&gt; to generate a new URI from those token values:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
using System;
using System.Collections;
using System.Collections.Generic;
 
using UriTemplate;
 
namespace TestJig
{
    public class Program
    {
        static void Main(string[] args)
        {
            UriPattern p = UriPattern.Create(&amp;quot;/{user}/{year}/{month}&amp;quot;);
            IDictionary&amp;lt;string, string&amp;gt; values = p.Parse(&amp;quot;/marc/2007/06?no#touch&amp;quot;);
            foreach (KeyValuePair&amp;lt;string, string&amp;gt; item in values)
            {
                System.Console.WriteLine(item.Key.ToString() + &amp;quot; = &amp;quot; + item.Value.ToString());
            }
            IResolver resolver = new DictionaryResolver(values);
            string url =  UriTemplate.UriTemplate.Expand(&amp;quot;http://localhost/paystub/{year}/{month}/{user}&amp;quot;, resolver);
            System.Console.WriteLine(url);
        }
    }
}
&lt;/pre&gt;&lt;h2&gt;
Other blog entries
&lt;/h2&gt;Steve Maine's  &lt;i&gt;UriTemplate 101&lt;/i&gt; talks about the System.UriTemplate class upcoming in future .Net framework releases &lt;a href="http://hyperthink.net/blog/2007/05/15/UriTemplate+101.aspx" class="externalLink"&gt;http://hyperthink.net/blog/2007/05/15/UriTemplate+101.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Steve Maine's  &lt;i&gt;UriTemplate 101&lt;/i&gt; talks about the System.UriTemplate class' Match method. &lt;a href="http://hyperthink.net/blog/2007/05/16/UriTemplateMatch.aspx" class="externalLink"&gt;http://hyperthink.net/blog/2007/05/16/UriTemplateMatch.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Mark Nottingham's &lt;i&gt;URI Templating&lt;/i&gt; talks about the specification of URI templating in a broader (not just Microsoft's .Net) scope &lt;a href="http://www.mnot.net/blog/2006/10/04/uri_templating" class="externalLink"&gt;http://www.mnot.net/blog/2006/10/04/uri_templating&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;</description><author>IDisposable</author><pubDate>Sat, 27 Oct 2007 00:50:45 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20071027125045A</guid></item><item><title>UPDATED RELEASE: 1.1 Release (Oct 26, 2007)</title><link>http://www.codeplex.com/UriTemplate/Release/ProjectReleases.aspx?ReleaseId=7958</link><description>Corrects problems with Regex metacharacters in pattern strings &amp;#40;like parenthesis&amp;#41;.  Add option to specify a UriTemplate to use the compile Regex option if it gets used a lot.&lt;br /&gt;&lt;br /&gt;Thanks to Darrel Miller for catching and fixing the metacharacter issue.</description><author></author><pubDate>Sat, 27 Oct 2007 00:49:04 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: 1.1 Release (Oct 26, 2007) 20071027124904A</guid></item><item><title>NEW POST: Release 1.1</title><link>http://www.codeplex.com/UriTemplate/Thread/View.aspx?ThreadId=16977</link><description>&lt;div class="wikidoc"&gt;
The changes look good to me.  They passed the few unit tests that I have created so far.  &lt;br /&gt; &lt;br /&gt;I have started building a URIPatternTable to be able to perform the same function that URITemplateTable does in System.ServiceModel.Web.  Would you be interested in including it in the project?&lt;br /&gt; &lt;br /&gt;I find it ironic that the URITemplate that is in System.ServiceModel.Web is not capable of parsing the URIs from either Astoria or the Windows Live API.  I guess this means that Microsoft have at least three teams working on URI parsing!&lt;br /&gt; &lt;br /&gt;Also, if I were to build a bunch of unit tests, what test framework would be the most appropriate.  I'm currently using VSTS.&lt;br /&gt;
&lt;/div&gt;</description><author>DarrelMiller</author><pubDate>Fri, 26 Oct 2007 14:13:02 GMT</pubDate><guid isPermaLink="false">NEW POST: Release 1.1 20071026021302P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/UriTemplate/Wiki/View.aspx?title=Home&amp;version=5</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;
Project Description
&lt;/h2&gt;The UriTemplate library is a simple set of code to encapsulate the building and parsing of URIs from replacement tokens. Using this couple of classes will make it easy to build RESTful URIs.
&lt;br /&gt;&lt;h2&gt;
News
&lt;/h2&gt;&lt;a href="http://www.codeplex.com/UriTemplate/Release/ProjectReleases.aspx?ReleaseId=7958"&gt;1.1 Release&lt;/a&gt;  is expected 10/26/2007 to include a fix patterns with Regex meta-characters and ability to build compiled UriPatterns.&lt;br /&gt;&lt;h2&gt;
What the heck is this all about?
&lt;/h2&gt;UriTemplates are a simple way to codify the build of URI strings that follow web-optimization and RESTful principles. In short, you want URIs that are &amp;quot;hackable&amp;quot; and well formed. UriTemplates allow regular constructing and parsing through named &lt;b&gt;tokens&lt;/b&gt; that specify where logical substitutions should be performed.&lt;br /&gt; &lt;br /&gt;The idea of a UriTemplate was probably best described by Joe Gregorio in this blog posting &lt;a href="http://bitworking.org/news/URI_Templates" class="externalLink"&gt;http://bitworking.org/news/URI_Templates&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and it simply talks about using URIs patterns like &lt;span class="codeInline"&gt;http://example.org/{item}/{userid&lt;/span&gt;} into strings like &lt;span class="codeInline"&gt;http://example.org/users/1234&lt;/span&gt; and back, given a dictionary of token/value pairs where &lt;span class="codeInline"&gt;item = &amp;quot;users'&lt;/span&gt; and &lt;span class="codeInline"&gt;userid = &amp;quot;1234&amp;quot;&lt;/span&gt;. The ability to generate well-formed URIs from the dictionary, or parse them out for incoming requests lets you easily build RESTful interfaces.&lt;br /&gt; &lt;br /&gt;The desire to implement this came from the upcoming UriTemplate in .Net (currently somewhat released in the BizTalk Services SDK).&lt;br /&gt;This specific implementation of the UriTemplate &lt;b&gt;does not&lt;/b&gt; have all the cool features of the Microsoft version; rather it follows from a java class written by James Snell in a posting here &lt;a href="http://www.snellspace.com/wp/?p=467" class="externalLink"&gt;http://www.snellspace.com/wp/?p=467&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. I felt his class was just perfect in the level of functionality and simplicity. This code is essentially a C# port to .Net from his java code.&lt;br /&gt; &lt;br /&gt;I expect that in a few years, .Net developers will be broadly using the System.UriTemplate currently contained in the BizTalk SDK's Microsoft.ServiceModel.Web.dll. For those of us developers in the real world not able to deploy all these cool new &lt;i&gt;pre-beta&lt;/i&gt; bits in production, this set of code will let you develop in either the 1.1 or 2.0 framework and establish the process now.&lt;br /&gt;&lt;h2&gt;
How to use
&lt;/h2&gt;Here's the simplest possible example; a console mode application that shows how to play with &lt;span class="codeInline"&gt;UriPattern&lt;/span&gt; to extract values for the tokens and how to use &lt;span class="codeInline"&gt;UriTemplate&lt;/span&gt; to generate a new URI from those token values:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
using System;
using System.Collections;
using System.Collections.Generic;
 
using UriTemplate;
 
namespace TestJig
{
    public class Program
    {
        static void Main(string[] args)
        {
            UriPattern p = UriPattern.Create(&amp;quot;/{user}/{year}/{month}&amp;quot;);
            IDictionary&amp;lt;string, string&amp;gt; values = p.Parse(&amp;quot;/marc/2007/06?no#touch&amp;quot;);
            foreach (KeyValuePair&amp;lt;string, string&amp;gt; item in values)
            {
                System.Console.WriteLine(item.Key.ToString() + &amp;quot; = &amp;quot; + item.Value.ToString());
            }
            IResolver resolver = new DictionaryResolver(values);
            string url =  UriTemplate.UriTemplate.Expand(&amp;quot;http://localhost/paystub/{year}/{month}/{user}&amp;quot;, resolver);
            System.Console.WriteLine(url);
        }
    }
}
&lt;/pre&gt;&lt;h2&gt;
Other blog entries
&lt;/h2&gt;Steve Maine's  &lt;i&gt;UriTemplate 101&lt;/i&gt; talks about the System.UriTemplate class upcoming in future .Net framework releases &lt;a href="http://hyperthink.net/blog/2007/05/15/UriTemplate+101.aspx" class="externalLink"&gt;http://hyperthink.net/blog/2007/05/15/UriTemplate+101.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Steve Maine's  &lt;i&gt;UriTemplate 101&lt;/i&gt; talks about the System.UriTemplate class' Match method. &lt;a href="http://hyperthink.net/blog/2007/05/16/UriTemplateMatch.aspx" class="externalLink"&gt;http://hyperthink.net/blog/2007/05/16/UriTemplateMatch.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Mark Nottingham's &lt;i&gt;URI Templating&lt;/i&gt; talks about the specification of URI templating in a broader (not just Microsoft's .Net) scope &lt;a href="http://www.mnot.net/blog/2006/10/04/uri_templating" class="externalLink"&gt;http://www.mnot.net/blog/2006/10/04/uri_templating&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:41:59 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20071026064159A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/UriTemplate/Wiki/View.aspx?title=Home&amp;version=4</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;
Project Description
&lt;/h2&gt;The UriTemplate library is a simple set of code to encapsulate the building and parsing of URIs from replacement tokens. Using this couple of classes will make it easy to build RESTful URIs.
&lt;br /&gt;&lt;h2&gt;
What the heck is this all about?
&lt;/h2&gt;UriTemplates are a simple way to codify the build of URI strings that follow web-optimization and RESTful principles. In short, you want URIs that are &amp;quot;hackable&amp;quot; and well formed. UriTemplates allow regular constructing and parsing through named &lt;b&gt;tokens&lt;/b&gt; that specify where logical substitutions should be performed.&lt;br /&gt; &lt;br /&gt;The idea of a UriTemplate was probably best described by Joe Gregorio in this blog posting &lt;a href="http://bitworking.org/news/URI_Templates" class="externalLink"&gt;http://bitworking.org/news/URI_Templates&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; and it simply talks about using URIs patterns like &lt;span class="codeInline"&gt;http://example.org/{item}/{userid&lt;/span&gt;} into strings like &lt;span class="codeInline"&gt;http://example.org/users/1234&lt;/span&gt; and back, given a dictionary of token/value pairs where &lt;span class="codeInline"&gt;item = &amp;quot;users'&lt;/span&gt; and &lt;span class="codeInline"&gt;userid = &amp;quot;1234&amp;quot;&lt;/span&gt;. The ability to generate well-formed URIs from the dictionary, or parse them out for incoming requests lets you easily build RESTful interfaces.&lt;br /&gt; &lt;br /&gt;The desire to implement this came from the upcoming UriTemplate in .Net (currently somewhat released in the BizTalk Services SDK).&lt;br /&gt;This specific implementation of the UriTemplate &lt;b&gt;does not&lt;/b&gt; have all the cool features of the Microsoft version; rather it follows from a java class written by James Snell in a posting here &lt;a href="http://www.snellspace.com/wp/?p=467" class="externalLink"&gt;http://www.snellspace.com/wp/?p=467&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;. I felt his class was just perfect in the level of functionality and simplicity. This code is essentially a C# port to .Net from his java code.&lt;br /&gt; &lt;br /&gt;I expect that in a few years, .Net developers will be broadly using the System.UriTemplate currently contained in the BizTalk SDK's Microsoft.ServiceModel.Web.dll. For those of us developers in the real world not able to deploy all these cool new &lt;i&gt;pre-beta&lt;/i&gt; bits in production, this set of code will let you develop in either the 1.1 or 2.0 framework and establish the process now.&lt;br /&gt;&lt;h2&gt;
How to use
&lt;/h2&gt;Here's the simplest possible example; a console mode application that shows how to play with &lt;span class="codeInline"&gt;UriPattern&lt;/span&gt; to extract values for the tokens and how to use &lt;span class="codeInline"&gt;UriTemplate&lt;/span&gt; to generate a new URI from those token values:&lt;br /&gt; &lt;br /&gt;&lt;pre&gt;
using System;
using System.Collections;
using System.Collections.Generic;
 
using UriTemplate;
 
namespace TestJig
{
    public class Program
    {
        static void Main(string[] args)
        {
            UriPattern p = UriPattern.Create(&amp;quot;/{user}/{year}/{month}&amp;quot;);
            IDictionary&amp;lt;string, string&amp;gt; values = p.Parse(&amp;quot;/marc/2007/06?no#touch&amp;quot;);
            foreach (KeyValuePair&amp;lt;string, string&amp;gt; item in values)
            {
                System.Console.WriteLine(item.Key.ToString() + &amp;quot; = &amp;quot; + item.Value.ToString());
            }
            IResolver resolver = new DictionaryResolver(values);
            string url =  UriTemplate.UriTemplate.Expand(&amp;quot;http://localhost/paystub/{year}/{month}/{user}&amp;quot;, resolver);
            System.Console.WriteLine(url);
        }
    }
}
&lt;/pre&gt;&lt;h2&gt;
Other blog entries
&lt;/h2&gt;Steve Maine's  &lt;i&gt;UriTemplate 101&lt;/i&gt; talks about the System.UriTemplate class upcoming in future .Net framework releases &lt;a href="http://hyperthink.net/blog/2007/05/15/UriTemplate+101.aspx" class="externalLink"&gt;http://hyperthink.net/blog/2007/05/15/UriTemplate+101.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Steve Maine's  &lt;i&gt;UriTemplate 101&lt;/i&gt; talks about the System.UriTemplate class' Match method. &lt;a href="http://hyperthink.net/blog/2007/05/16/UriTemplateMatch.aspx" class="externalLink"&gt;http://hyperthink.net/blog/2007/05/16/UriTemplateMatch.aspx&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;Mark Nottingham's &lt;i&gt;URI Templating&lt;/i&gt; talks about the specification of URI templating in a broader (not just Microsoft's .Net) scope &lt;a href="http://www.mnot.net/blog/2006/10/04/uri_templating" class="externalLink"&gt;http://www.mnot.net/blog/2006/10/04/uri_templating&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt; &lt;br /&gt;Release 1.1 &lt;a href="http://www.codeplex.com/UriTemplate/Release/ProjectReleases.aspx?ReleaseId=7958"&gt;1.1 Release&lt;/a&gt;  is expected 10/26/2007 to include a fix patterns with Regex meta-characters and ability to build compiled UriPatterns.&lt;br /&gt;
&lt;/div&gt;</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:40:55 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20071026064055A</guid></item><item><title>UPDATED RELEASE: 1.1 Release</title><link>http://www.codeplex.com/UriTemplate/Release/ProjectReleases.aspx?ReleaseId=7958</link><description>Corrects problems with Regex metacharacters in pattern strings &amp;#40;like parenthesis&amp;#41;.  Add option to specify a UriTemplate to use the compile Regex option if it gets used a lot.&lt;br /&gt;&lt;br /&gt;Thanks to Darrel Miller for catching and fixing the metacharacter issue.</description><author></author><pubDate>Fri, 26 Oct 2007 06:38:44 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: 1.1 Release 20071026063844A</guid></item><item><title>UPDATED RELEASE: 1.1 Release</title><link>http://www.codeplex.com/UriTemplate/Release/ProjectReleases.aspx?ReleaseId=7958</link><description>Corrects problems with Regex metacharacters in pattern strings &amp;#40;like parenthesis&amp;#41;.  Add option to specify a UriTemplate to use the compile Regex option if it gets used a lot.</description><author></author><pubDate>Fri, 26 Oct 2007 06:38:00 GMT</pubDate><guid isPermaLink="false">UPDATED RELEASE: 1.1 Release 20071026063800A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Create actual 1.1 Release branch</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:29:48 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026062948A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Synch back &amp;#40;with no change&amp;#41;</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:28:00 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026062800A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Corrected build target info for this branch</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:26:23 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026062623A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Bump version number and note build target in assembly metadata.</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:25:10 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026062510A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Prepare 1.1 Release</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:23:14 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026062314A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Sync forward again</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:20:35 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026062035A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Sync back from 1.1 to keep tree synched</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:19:39 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026061939A</guid></item><item><title>CLOSED FEATURE: Option to make UriTemplates compiled</title><link>http://www.codeplex.com/UriTemplate/WorkItem/View.aspx?WorkItemId=7939</link><description>When a UriTemplate is going to be used over and over, it would be nice to allow the template to be specified as a compiled pattern&lt;br /&gt;</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:12:17 GMT</pubDate><guid isPermaLink="false">CLOSED FEATURE: Option to make UriTemplates compiled 20071026061217A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/UriTemplate/SourceControl/ListDownloadableCommits.aspx</link><description>Merge changes back from 2.0 branch for optionally compiled patterns</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:12:16 GMT</pubDate><guid isPermaLink="false">Source code checked in 20071026061216A</guid></item><item><title>REOPENED FEATURE: Option to make UriTemplates compiled</title><link>http://www.codeplex.com/UriTemplate/WorkItem/View.aspx?WorkItemId=7939</link><description>When a UriTemplate is going to be used over and over, it would be nice to allow the template to be specified as a compiled pattern&lt;br /&gt;Comments: ** Comment from web user: IDisposable ** &lt;p&gt;Want to merge changes back from 2.0 branch&lt;/p&gt;</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:12:03 GMT</pubDate><guid isPermaLink="false">REOPENED FEATURE: Option to make UriTemplates compiled 20071026061203A</guid></item><item><title>COMMENTED FEATURE: Option to make UriTemplates compiled</title><link>http://www.codeplex.com/UriTemplate/WorkItem/View.aspx?WorkItemId=7939</link><description>When a UriTemplate is going to be used over and over, it would be nice to allow the template to be specified as a compiled pattern&lt;br /&gt;Comments: ** Comment from web user: IDisposable ** &lt;p&gt;&lt;/p&gt;&lt;p&gt;&amp;#42;&amp;#42; Closed by IDisposable 10&amp;#47;25&amp;#47;2007 10&amp;#58;12 PM&lt;/p&gt;</description><author>IDisposable</author><pubDate>Fri, 26 Oct 2007 06:12:03 GMT</pubDate><guid isPermaLink="false">COMMENTED FEATURE: Option to make UriTemplates compiled 20071026061203A</guid></item></channel></rss>