I have just read “United States Patent Application 20040260722”:http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&d=PG01&p=1&u=%2Fnetahtml%2FPTO%2Fsrchnum.html&r=1&f=G&l=50&s1=%2220040260722%22.PGNR.&OS=DN/20040260722&RS=DN/20040260722 filed by “Microsoft”:http://www.microsoft.com/ on 2004-07-16. The patent application is titled
Web address converter for dynamic web pages, which immediatly got me interested.
Note that I am not a patent lawyer, I will never be one, but this patent seems to be fairly broad, and covers in great detail how to create search-engine-friendly URLs from database queries. Read on
h3. What is the patent describing?
The very first claim in the patent is:
bq. A static address to dynamic address (S-to-D address) conversion method comprising: receiving a static address pointing to a dynamic Web page; parsing the static address to identify at least one value associated with a field within the static address; and generating a dynamic address incorporating at least one value associated with a field, wherein the dynamic address points to the dynamic Web page.
From there on, the patent describes a mechanism for converting web site addresses from a “static” form to a “dynamic”
h3. Details and implications.
Translated into examples, what Microsoft is applying a patent for is a method to rewrite a search-engine friendly URL such as http://example.com/cat/linux/vendor/redhat/ or even http://example.com/linux/redhat/ into a more complex query, such as http://example.com/q.asp?cat=linux&vendor=RedHat
Sounds familiar? Well, it should. Meet mod_rewrite. Unless I have fundamentally misread the patent application, the following mod_rewrite rule would infringe on this patent, if granted:
bc. RewriteRule ^(.*)/(.*)/(.*)/(.*)$ q.asp?$1=$2&$3=$4
If granted, this would mean that many, if not most database-driven CMSes written during the last four years that facilitate more or less complex URL rewriting to provide _human and search engine friendly URLs_ would be infringing.