RE: DCOM is now open code

Subject: RE: DCOM is now open code
From: "Didier PH Martin" <martind@xxxxxxxxxxxxx>
Date: Sat, 6 Mar 1999 16:25:43 -0500
Hi Lars

<YourComment>
Or Open Source non members and free for Open
| Source members.

Hmmm. It does not appear to have received the Open Brand, judging by
the list at

<URL:http://www.opengroup.org/regproducts/company.htm>

nor can I find DCOM under:

<URL:http://www.opengroup.org/regproducts/> or
<URL:http://www.opengroup.org/press/titles.htm>

Do you have a precise URL?
</YourComment>

<Reply>
Do you mean a pontife somewhere who says this is open source? It is as open
as W3C is. Based on a membership. But the code binaries are available for
free. The sources are free for the consortium members and based on a fee for
non members (3500$). Participation or the creation of a workgroup is
reserved to members (same rules as for W3C). Specs elaboration are reserved
sololy to members (same as W3C). And the first specs definition comes from a
manufacturer named Microsoft (same as for Java who comes from sun, but the
JDK is strict Sun property - Microsoft gave full licence for the source code
to the OpenGroup . Hoops JDK is still owned by Sun, therefore all the JDK is
proprietary :0.
OpenGroup members can modify, elaborate new specs and modify the reference
source code. All this said without any political inclination. Just facts.
Just to keep our clocks with the right time :-)
</Reply>

<YourComment>
Also, what you describe above does not meet the criteria for Open
Source outlined in

<URL:http://www.opensource.org/osd.html>
</YourComment>

<Reply>
Yes you are right it doesn't conform to their opinion. Its a different model
based on membership like W3C is or any membership based institution like OMG
(i.e. CORBA). So CORBA, based on their definition is not open source. I
know, You'll say its only specs and you are right to say so. So I don't know
how to call that OpenSource? It is open in the sense that if I am member I
can get the sources for free. If I am a non member I have to pay to source
code and get the binaries for free. If I am a member I can create a
workgroup with other members to update or create new specs, even modify the
reference source code. Is it a process as open as Linux (for code creation)
or IETF (for specification creation) I doubt. But is W3C open? or Java
really non proprietary? these are also good questions for curious minds.
</Reply>


<YourComment>
| Hope this will close the subject about DCOM as being a proprietary
| format and that now W3C will also include a DCOM IDL example for the
| DOM.

Well, even if the source for non-Windows DCOM implementations is made
available, DCOM itself remains proprietary, by virtue of being
controlled by Microsoft alone.

The CORBA 2.2 specification contains a mapping of IDL to MIDL and ODL
in chapters 16 and 17. However, I have a sneaking suspicion even
though this mapping is from February 1998 it is already out of date.
That in itself should be sufficient to explain why the W3C did not use
one of the Microsoft IDLs.
</YourComment>

<Reply>
first comment: On windows platform DCOM implementation is obviously
controled by Microsoft and nobody would contradict you. But to say that DCOM
itself is propretary, you do a big mistake. Only the implementation on
Windows is. Let's look at it from a legal point of view (property is a legal
concept doesn't it?) All source code making the Windows implementation is
Microsoft copyrighted. So you can get to court if you copy Microsoft code
except if you have a licence from them to modify and distribute the source
code. For Win32 this is the case except actually for DCOM where all rights
have been tranfered to the OpenGroup. Thus, by virtue of the licence you get
with the opengroup you can modify the source, distribute freely the binaries
but not the source. So, based on all group previously mentionned, it soes
not correspond to their definition of open source. But the IDL is not
necessarily a property of Microsoft. First, because it is an interface
definition language (would you say that all java interfaces are Sun
property? ). Also because most of it is based on OSF RPC IDL which is not
proprietary. Microsoft added the Coclass and some other entities. I agree
that an interface definition should be restricted to basic constructs such
as interfaces (anyway the coclass definition is for the type library and not
to define an interface). Thus a DCOM IDL is also a OSF IDL if we don't use
the IDL extensions. Thus, we can be at least OSF RPC compliant and therefore
would not be "proprietary" (but the OSF RPC is a legal copyright of the OSF
group). There is jurisprudence here also. For example, would you said that
the intel instruction set is intel proprietary? So why Intel do not sue AMD?
This is because a certain jurisprudence admit that an interface is not a
property. An interface has an implicit public ownership. This is why some
years ago Apple lost its case against Microsoft on the desktop look and
feel. Even if both system where very similar, it could be showned that even
if the interfaces are similar the implementation where different. There is
even a group today that would fit in the open source definition (as per your
links referals) that re-implement Win32 with source code freely available
and they are not in court because the code or the implementation is not
Microsoft code. Even more, the european community declared Win32 a standard
and therefore could be re-implemented. So, from the legal point of view,
this is not so black and white and not based on the opinion of some groups
but based on legal jurisprudence. If an interface would be legally owned by
an organism we can then be sued by W3C because all the specs are copyrighted
by W3C. So, technically speaking, we could be sued by implementing W3C specs
like for instance a XSL engine because the spec document is copyrighted.
But, is it not the case? why are not sued then? Why are the group
re-implementing the Win32 interface are not sued then? and why do AMD is not
sued by Intel? Good questions for a curious mind :-)

If W3C forgot an IDL definition it is for a reason that I don't know. And
because I don't know I won't comment on this. Except that the proprietary
argument is strange if you consider the fact that Java is copyrighted by Sun
and could technically considered Sun's property (except that for the same
reasons as mentionned previously Kaffe people are not sued because the
re-implement a part of the JDK even if that stuff is copyrighted by Sun).
CORBA is copyrighted by the OMG group (but there are implementations created
by non OMG members and they are not sued). I would not say that Java could
be included in the Open source category (as per your links referals). And I
would not say that OMG is as open as IETF for specs elaborations (like W3C,
OMG is based on fee based membership. The argument of saying that we don't
include a DCOM interface because there is a mapping from CORBA to DCOM could
also be applied to Java because there is a mapping from CORBA to Java and
therefore a java interface definition is superfluous. But to ask why W3C
didn't included a DCOM interface if they included a language dependent
interface is indeed a good question for a curious mind that will probably
never get an answer ;-) or maybe will but with weak arguments (except if
spec editors would say - sorry, we simply forgot, or sorry, we don't know
OSF RPC - or sorry, for political reasons we can't - or Sorry this is
because we like Java and CORBA and not DCOM, period. This all would be good
answers without any logical counter arguments)

This said, I don't want to start any religious fight. My posting was just to
give some information to my collegues who may be interrested to have the
source code to play with. Also that DCOM is pratical because Mozilla group
is using XPCOM which is DCOM based (same multiple interface concept - and
you now what? they are not sued by Microsoft because they use the
Queryinterface construct :-). Anyway if you are simply curious and want to
play with DCOM on unix or Linux, you can ask for the code to the OpenCode
consortium.

By the way, sunny (my sun machine) is running an application using DCOM that
I recompiled with GNU. Because it is a backend object (no interface) it ran
and could talk with "Darthvader" my winNT machine. I'll try to recompile
DCOM sources on "antartica" my penguin host "linux machine" to see if all
the toys could talk together, just for fun, just the single pleasure of a
curious mind that do not have time nor any energy for religious wars ;-)

I do not have a mac, so, for fun, if someone do a compile on a mac, email
me. I would be interested to make some experiments with this implementation
(I have a big bunch od XPCOM/DCOM objects to play with)

</Reply>

Regards
Didier PH Martin
mailto:martind@xxxxxxxxxxxxx
http://www.netfolder.com


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread