[
Lists Home |
Date Index |
Thread Index
]
I will avoid the unbearable temptation to mumble about how
wrong this specific patent is... I'm sure other will do for me.
Rather, I think it is time that we look a bit deeper into what is
going on here and recognize a serious problem that must be addressed
soon.
There has been a rash of patents applied for and granted
recently whose only differentiation from the prior art is that the
call for encoding data using HTML, XHTML or XML. In many cases, the
"process" being patented is exactly like others that have been long in
use, the only difference is the encoding format. The Microsoft
patent[2] that Tim Bray pointed to in his note falls largely in this
class. If you substitute "ASN.1" for the occurrences of XML and/or XSD
in this patent, you'll see that prior art extends back to 1982 or so
-- especially since, "ASN.1 is an XML schema language." [1] Thus,
using ASN.1, rather than XSD, I could produce a system which is
effectively identical to that in the Microsoft patent application by
simply translating the XSD into ASN.1. Would this mean that I could
get a patent on such a system? Or, if I translated the schema to
RelaxNG or Schematron that I could get additional patents? Based on
current patent office practice, it seems like the answer is "Yes."
However, this is clearly wrong.
It is well established, in patent law, that you can't get a
patent by merely substituting one material for another unless the
substitution results in some substantive benefit. Thus, if something
is patented as being constructed from wood, you can't get a patent on
a plastic version unless using plastic is a truly useful innovation.
But, we're seeing hundreds of patents and applications that are based
on mere substitutions that don't offer any innovation.
XML, ASN.1, RelaxNg, Schematron, are all members of a class of
languages that accomplish a distinct function. They are schema
languages that define encodings rather than structures. While there
are many schema languages, these particular systems are focused on the
problem of defining "generic" or "flexible" data encodings for
interchange. As such, the substitution of XML for ASN.1 or RelaxNG
should be considered much like a substitution of wood for plastic. In
this particular case, the Microsoft patent is simply saying that it is
a word-processing system that stores its data in a format which is
defined by an external schema. The fact that XML is used is
irrelevant. The "innovation" in this area didn't come from Microsoft
in the 90's, rather, it came perhaps from Goldfarb with his early DTD
driven SGML systems in the 70's and 80's, or perhaps Bob Travis and/or
Rich Kalin at Digital in the early 80's when they decided to define a
word processing format using ASN.1. (My apologies if I left someone
out of this list of potential innovators...)
At the same time that patent offices are falsely rewarding
non-innovation via substitution, they are denying the real innovation
of others. I've already mentioned those that dealt with the specific
area of document and/or word processing formats. But, we must also
look to those that "invented" XML itself. I believe that these people
intended and foresaw that XML would be useful for solving a broad
class of innumerable application problems. The mere fact that they
didn't produce an exhaustive list of all possible applications isn't
relevant. What they did was solve, in a specific way, the generic
problem of producing a format suitable for use in a schema driven
application. The mere identification of one particular use this format
in an application domain that has a long history of schema-driven
implementations does not rise over the bar needed to justify a patent.
(Note: There have been other similar patents in other areas. For
instance, I recently helped fight a patent that claimed the idea of
storing hyperlinks on CD-ROMS. This ancient, submarine patent claimed
that at the time when applied for, the idea was innovative. Yet, the
inventors of optical storage devices back in the 60's (principles of
Precision Instruments -- my first employer) would have claimed that
they created a system which was suitable for *ALL* storage
applications for which erasable media had been traditionally used but
where erasure was not necessary. Thus, the mere identification of such
a use is not innovative. The innovation happened over 30 years ago --
not when the specific form of optical storage, the CD-ROM, became
popular in the late 80's or early 90's.)
My personal feeling is that words like XML, HTML, XHTML,
RelaxNG, etc. should simply never appear in the claims of a patent.
Anytime they do, I think we have an almost primae faciea case for
saying that the patent is bogus. To be innovative, one should prove
some new and novel benefit of using "generic data encoding" or "schema
driven something or other", not merely the application of known
techniques to general problems.
There are many who flame against the patent system in general.
However, I think that here we have a specific kind of abuse of the
system that should be worth taking action to prevent or end. What I'm
not sure of is what the process should be for getting the patent
lawyers and examiners to read the laws that are supposed to drive
their business. Could Lessig help here? If this kind of substitution
continues, we'll continue to buried and constrained by patents that
offer little innovation while blocking us all from using techniques,
methods, patterns and processes that have become commonplace. This is
not a general flame, this is a specific "threat" to XML and the web.
bob wyman
[1] At DEC, we defined our word processing format in ASN.1 back in the
early 80's.
[2] Note: The fact that Microsoft has filed this patent application is
irrelevant to the issue. There are many others who are filing these
things. One of my favorite in this category was a Worldcom patent
application for the "innovation" of storing log files for a SIP
session using XML. i.e. using generic encoding to store logs for a
computer process... The only "value" in the patent was the
identification of specific form of encoding, XML, and a specific
application for which the logs would be produced (SIP). However, it
defined a process which was so profoundly obvious that merely reading
the document was almost painful.
|