EditorsAbout the SiteComes vs. MicrosoftUsing This Web SiteSite ArchivesCredibility IndexOOXMLOpenDocumentPatentsNovellNews DigestSite NewsRSS

07.30.07

OOXML ‘Extension’ Tricks Have Roots in the Past

Posted in Antitrust, ECMA, IBM, ISO, Microsoft, Open XML at 2:21 am by Dr. Roy Schestowitz

After about a week of silence, Rob Weir is back and he’s already swinging. You’ll find Rob’s letter with OOXML objection arguments and you’ll also find this elaborate view on properietary ‘extensions’ in OOXML. This isn’t exactly new information, but it’s worth discussing further.

In previous posts I have pointed out numerous “features” in OOXML which cannot be implemented by anyone else but Microsoft. These stem from a variety of causes, including elements lacking definition (“lineWrapLikeWord6″) to features that are tied to Windows or Office (e.g., Windows Metafiles) to items that are “merely referenced (OLE, digital ink) to items that although featured prominently in Office marketing materials, are curiously not mentioned at all in the OOXML text (scripts, macros, DRM, SharePoint, etc.). When these issues are raised, the typical response from Microsoft has been along the lines of, “Don’t worry, these features are optional. You don’t need to implement them. They are there for implementations that know what they mean. If you don’t understand them, you can ignore them.”

Something in this strategy rang a bell, so dumpster-diving for some antitrust exhibits seemed like a fun idea.

Evidence that this is a recurring strategy is presented below. Highlighted using bold face are bits of particular interest.

Watch how Microsoft used OLE in the past.

Exhibit #1 [PDF]:

From: Bill Gates
Sent Sunday, October 06, 1996 11:54 AM
To: Bob Muglia
Cc: Aaron Contorer; Richard Fade; Steven Sinofsky; Paul Maritz; Nathan
Myhrvold; Brad Silverberg; Adam Bosworth
Subject: Access, Internet studio, VB and other overlapping products

..

Why is the difference between Internet studio and Access? I can’t detect any reasonable difference. Internet studio has taken an approach of putting onto HTML pages the most ugly Microsoft garbage ever seen since COM/OLE programming in C++ was declared a success in order to block language invocation. i am still blown away by seeing all those ugly PARAM statements in the HTML totally confusing anyone who tries to do anything. If something isn’t part of the WYSIWYG output then it should be succinct and understandable. This was the opposite of that.

Behold the “black project”.

Exhibit #2 [PDF]:

From: John Shewchuk
Sent: Thursday, October 05, 1995 2:46 PM
To: bens; bradsi; chrisjo; craigm; donbrad; jallard; jimall; johnlu;
mikecon; paulma; rict; thomasre
To: thomasre
Cc: patler
Subject: RE: Webmaster/Server ISV event – day one

When I got Gosling and Naughton started on the Java OLE control for Blackbird, it was a sensitive issue at Sun – Gosling was getting it done as a “black project”. So please don’t raisepublic awareness of the project without checking with Naughtion.

Regarding Java vs OLE controls

Both Gosling and Naughton will admit that java is a programming language and that without APIs to call, Java is kind of stupid. There is a growing consensus among developers that tried HotJava that it has major limitations.

The lack of APIs is the reason StarWave is doing the Java OLE control – so they can get access to OLE automation especially automation of Blackbird objects. Gosling admits that once someone does this it is no longer cross platform and it is hard to be safe.

Finally: OLE and Java go together nicely. You don’t need to position them as competitive. Java goes up against VB. We need to get the VB team to respond to Java. Maybe VB should be cross-platform and safe. See the Blackbird rude Q&A.

Regarding overall messages

I think the whole cross-platform issue is going to die down once we start getting cool OLE controls (or Netscape add-ons) that take advantage of DirectX and other Windows 95 APIs. Cross platform is an important customer message but in the long run it a bad technical goal because it means lowest common denominator. So talk the talk, but show customers and publishers what they are missing. Leverage our strength in great Windows 95 capabilities.

Netscape add-ins ONLY RUN IN A NETSCAPE BROWSER. You can’t use them in IE, Word, PowerPoint, VB, Delphi, VC++, Blackbird or anything else. You can’t even use them inside each other. OLE is OPEN, Netscape add-ins lock you into a Netscape only strategy. This is lame. Java is probably not much better.

Finally, both Java and Netscape add-ins fail to address design-time operation. This is a huge leverage point for Microsoft. Senior people that are fillly in the Netscape camp think twice when they see the Macromedia Director editor come up inside the Blackbird design environment. They think about what it will take to get this done in Netscape and it is a pain.

Why does this matter? Because it represents a radically different model of content creation than Java or Netscape add-ins suggest. CPs don’t want to write code!!! They want to focus on creating cool content. They
want simple, simple, simple. Programming is hard. OLE controls are PACKAGED bundles of capability. OLE makes it easy for hot software developers to package up a lot of code that the creatives can use. LibD from CRG can attest to the fact that Bud and they could provide their cool runtime to lots of non-programmers. (it turns out that many Macromedia users hate the fact that they have to learn Lingo to do anything cool.)

So let’s make sure we explain that OLE controls are more than JUST an add-in strategy. OLE Controls are the start of a COMPLETE strategy. Add an open message, VB Blackbird, IE with OLE control support, open
scripting, and so on, and then you have your story. Lets fight on our own turf – in other words, focus on content providers and ISVs (they are the enablers for the content providers) and give them what they want. And let the great applications win over the viewers.

FROM: Brad Silverberg

Infamous Microsoft documentation (if any is made available at all).

Exhibit #3 [PDF]:

To: Douglas Wilson @ Lotus, Scott Kliger @ Lotus, Phil Stanhope @ Lotus,
Alex Morrow @ Lotus, Joe Gulhridge @ Lotus, Jack Ozzie @ IRIS, Barry
Brfggs @ Lotus, Aswan Dev, Ailen Olsen @ Lotus, Aswan Clients, Jeffrey R
Beir @ Lotus, Michael Welles @ Lotus, Steve Manousos @ Lotus, Mike
Vassilopoulos @ Lotus

cc: John Landrt @ Lotus, Ilene Lang @ Lotus
From: Noah Mendelsohn
Date: 02/03/95 03:54:31 PM

Subject: Meeting with Sara Williams Regarding OCX Status and Support

Sara Williams, an OLE/OCX/Cairo evangelist in Microsoft DRG visited with a group of Lotus developers at Rogers Steel on Tuesday afternoon, January 31. Here are minutes of our meeting. The purpose of the meeting was to review Lotus’ concerns regarding Microsoft’s fairness in supporting OCX development, and to answer other questions regarding OCX and OLE.

Unless otherwise indicated, all questions are from Lotus personnel and all answers are from Sara. Sara has promised to respond by email on all the unresolved points listed below. I’ve rearranged the order of discussion to put the most useful new information near the top.

Lotus Attendees: Noah Mendebohn, Scott Kliger, Phil Stanhope, Edward Ogu~ofor, Jeff Buxton

Primary topic:

Lack of appropriate support and documentation for OCX. Microsoft applications and tools seem to have an unfair advantage using OCX-how did Microsoft release container apps when nobody is supposed to have sample code yet?

The most important issue we discussed, and the one we spent the most time on, is Lotus’ concern that OCX support for ISV’s is inadequate, that sample code for containers is not available, that the only server samples are part of MFC and carry restrictive licenses, and that Microsoft has somehow managed to ship products using OCX in spite of these limitations. Speaking only for herself, Sara indicated that she shares many of these concerns. She also said that Microsoft as a whole does recognize that there is a problem regarding support for ISV’s using OCX.

We emphasized the degree to which we view this as a serious threat to our ability to compete. While there were also problems when OLE 2.0 itself was released, the OCX situation is far worse. For OLE 2.0, Microsoft provided comprehensive published documentation, an extensive support infrastructure, and sample implementations which were of moderately good quality and no more restrictively licensed than the Windows operating system itself.

The current situation with OCX is inappropriate. Sara reiterated that she understood our concerns, but said she had not realized the seriousness with which we viewed these problem. She asked what could be cone to resolve the problems. Among the possibilities that we suggested were:

(1) provide freely licensed production quality sample implementations of container and server immediately … if other samples cannot be provided, remove the licensing restrictions on the relevant parts of the MFC controls implementation and the CDK.

(2) publicly acknowledge that OCX is an operating system API, to be supported with at least the same degree of open process as is applied to the windows API and OLE 2.0.

(3) Provide open support and immediately redress any advantages which may currently be given to Microsoft applications or tools products in using OCX

(4) Lotus believes that support could be improved and integration with OLE technology streamlined if Microsoft were to transfer OCX development responsibility to their systems organization, but that is ultimately an internal concern of Microsoft.

Sara acknowledged that the problems we highlighted are real, and that many of them do trace to the fact that OCX development is done in the tools group. She promised to promptly review our concerns with Doug Heinrich and other senior managers at Microsoft.

OTHER

Q. What OCX containers are available tor testing. For which ones is source available?

A. CPatron (source available, but not a production quality sample), Access (no source), VB.4.0 (Beta-no source), Visual FoxPro (no source). Doesn’t know whether Eforms has OCX container. Cairo shell will.

Q. What about Mike Blaszczack’s sample container?

A. Right, that’s coming when the MSJ article is published, but it’s based on MFC OLE support, so you probably have licensing problems with it. Also Kraig Brockschmidt is writing some new white papers on creating
an OLE controls container.

Q. We’ve heard that Microsoft is contemplating support for 32 bit VBX’s after all.

A. I’ve heard nothing about it and I can’t imagine why we would do that.

Lotus: Because VBX vendors are telling you that OCXs are too hard to build and that they have too much overhead.

A. I haven’t heard that and I think I would know about any change in strategy. It’s still: VBX is 16 bit only, OCX is preferred, and on 32 bit, it’s the only option.

Q. Is OCX on the Mac? Will it be? What about other Wise platforms?

A. Don’t know…will check. At best, Wise platforms would lag significantly.

Q. Will the OLE documents extensions previewed last week apply to OLE
Controls.

A. I would think so. (BTW, I’m not sure she’s right about that. Some of the OLE documents extensions are implemented in the OLE default handler, which is not normally used by OLE controls.)

Q. Tell us about OCX futures.

A. There is an improved CDK in the new Visual C-+, just out. Beyond that, can’t say much. A strange situation has arisen within Microsoft according to Sara. Although the Developer Relations Group (DRG) of which she is a part is organizationally affiliated with the Tools Group (i.e. languages, data bases, etc.), DRG actually has a much closer working relationship with the sysems organization See discussion above.

Q. Can we get the VB 4.0 beta? It’s the only useful example of a production quality OCX container wilh scripling.

A. Will check.

The lack of clear OCX documentation is aggravating a problem we’ve had with OLE 2.0 since the beginning: everybody’s doing it differently.

A. Microsoft is working on a validation suite for OLE 2.0 to test interoperability. First wave may see this in the next couple of months. Not clear whether this applies to OCX – I suspect not (NRM).

Lotus: Great, something like this is needed, but please make sure that ISV’s get to comment before the validation suite is frozen. Compatibility checking is important, but let’s make sure you’re not preventing our apps from doing what they need to do.

Q. Do you have more information on apartment model threading in OLE?

A. Apartment model threading will be supported in Win95 and NT 3.5.1. Should be in current win95 builds on ISDN. Fundamentally, each COM object does its work on a single thread. Sara is currently writing a white paper, with sample code. It will (probably) be available within the next 2 weeks or so on the ISDN server.

Q. When will a common .EXE be usable with the OLE .DLLs on NT and Win95

A. Don’t know. Will check.

What are the details of OLE support in the Chicago shell? Why was Lotus told that the shell would not be OLE enabled when In fact it is? Why was Lotus not given earlier warning if there was a change of plan? We’re still lacking useful documentation on OLE in the shell-is there any?

A. Sara didn’t seem to be familiar with the history of this problem, or with any of the details of OLE enabling in the shell.

Q. .DLLs have advantages over .EXE’s in terms of performance and flexibility, but doesn’t the OCX architecture take us back to where we were with Win16 in terms of programs (in this case components) impacting each others’ integrity? Also: isn’t this an incredibly powerful opportunity for those writing Trojan horses, viruses, etc?

All: This question generated quite a length discussion, but Sara didn’t seem to know whether anyone at Microsoft had given this serious consideration, whether there is an official corporate position on the problem, or whether there are any specific efforts planned to minimize the impact. The Lotus attendees expressed a strong concern that these were serious problems. It’s ironic that we’ve waited for robust, secure, 32 bit operating systems as the appropriate environment for OLE, and now we’re tooking at running multiple components within the same process space. (Noah’s observation, not expressed at the meeting: this is why the research community is looking at special purpose operating systems and special purpose hardware to support component based architectures, it’s difficult to get good pertormance with good isolation using convention processors and OS’s.) Noah

More information will be posted if any more is found.

Share this post: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Reddit
  • co.mments
  • DZone
  • email
  • Google Bookmarks
  • LinkedIn
  • NewsVine
  • Print
  • Technorati
  • TwitThis
  • Facebook

If you liked this post, consider subscribing to the RSS feed or join us now at the IRC channels.

Pages that cross-reference this one

2 Comments

  1. Roy Schestowitz said,

    July 30, 2007 at 2:29 am

    Gravatar

    Watch how Microsoft ‘forgets’ (or neglects) to invite IBM to the preview of OLE. Just a few days ago, IBM got excluded in Portugal (and never forget Denmark). History repeats itself… in a sense.

    Exhibit #4 [PDF]:

    [...]

    Subject: Re: OLE DB Design Preview, June 7&8, 1995

    Thanks for the email followup. No .. I did not receive the fax. Do you know to which fax number you sent it? The updated fax number that I gave you a few weeks ago, 617-693-8676, is correct. I suspect that your distribution lists for design review announcements may have had an old number.

    We would like to have Lotus represent ion at the design review, but it will probably not be me this time, as I am off on paternity leave for awhile. If you wouldn’t mind faxing the materials to the number given above, I’ll try to circulate them and get a response ASAP. We’ll probably be picking it up Tues. or Wed, so a response by Wed. is a little tight. Would you please hold two slots for us in the meantime, and I’ll get back to you as quickly as possible? How tight is space this dine? Am I correct in assuming that this is the followup to the earlier Nile review, and that it’s for a somewhat broader audience? Thanks.

    Thanks also for your earlier note. Any news on VB 4.0 beta agreements? We have a similar interest in the VC++ 3.0beta, which we were also not invited to join. That too would be a good reference container, which I suspect that other container venders may be using as a point of comparison for their own work.

    As to why more container reference material is needed, I don’t doubt that some simple OCX containers can be built based on the reference materials available, particularly if you have access to VB 4.0 to use for comparison purposes and compatibility testing. On the other hand, there are numerous details that Kraig doesn’t even attempt to cover, for which the spec too is unclear.

    I doubt, for example, that the implementors of VB 4.0 or VC++ 3.0 could be implement their container support based only on cpatron and Appendix D or the CDK reference materials. So the issue is not that it’s
    impossible to write a container of any sort, but that it’s not possible to learn the details required to correctly build sophisticated containers that exploit the full range of features suggested in the OCX spot.

    Thanks as always for your help. Sorry I won’t be making it out there on this trip, but I look forward to attending future OLE related design reviews. Are any scheduled for the near future? Thanks.

    Noah

    [...]

    Greetings !

    By now, you should have received via fax an invitation to our upcoming OLE DB Design Preview. The Design Preview will be here at Microsoft in Redmond, Washington on June 7&8.

    If you have already RSvP’d, that’s great – we’re looking forward to seeing you. If you’ve not RSvP’d, please be sure to do so by May 31st so that we can reserve space for you. Also remember that you must return a signed NDA before attending the design preview

    If you did not receive an invitation, please reply (to both me and Ellen Tucker) with your fax number, so that we can fax you an invitation.

    Best regards,

    Sara Williams
    Manager, OLE Evangelism
    Microsoft Developer Relations

    [...]

    Noah,

    I wanted to give you an update on the issues that we discussed during our phone call last week.

    As I mentioned on the phone, there are several other ISVs who have very successfully implemented OLE Control Containers, based solely on Kraig Brockschmidt’s sample and accompanying document. In fact, I met another one last week. So, I find it difficult to understand why you feel that you don’t have all the information that you need. A list of issues that you feel are unclear or ambiguous in the specification and Kraig’s document and sample would be very helpful to me.

    However, I’m working with our VB group to see if they will consider you as a beta candidate. This would be with a special non-disclosure agreement that listed the specific developers who could use the VB beta, that they would use it solely for the purpose of testing your OLE controls implementations and that those developers would have no contact with the groups at Lotus who are working on potentially competitive technology. Again, I have not heard back from the VB group; I will let you know when I do.

    I am still looking into your questions about using the property set code from the CDK, and I’ll let you know as soon as I’ve got an answer for you.

    Sara Williams

  2. Stephen said,

    July 30, 2007 at 3:41 am

    Gravatar

    Storming analysis. Will the leopard change it spots under the current leadership? Interesting to watch this pan out.

What Else is New


  1. Links 24/5/2017: New RHEL Beta, SteamOS Updated

    Links for the day



  2. Great News: While IBM et al Try to Undermine Patent Reform the Supreme Court Deepens the Reform in TC Heartland Case

    In a unanimous decision, with the court ruling 8-0 against TC Heartland, the monkey business in East Texas (beneficial to patent trolls and large businesses that leverage software patents) may have just come to an end



  3. Speculations About Battistelli's End of Term, Campinos at EUIPO, and Failed UPC Ambitions

    Rumours and speculations surrounding the fate of the EPO's leadership now that the UPC gravy train is stuck again and Battistelli's protector, Jesper Kongstad, is about to leave



  4. Martijn van Dam is Wrong to Believe That Battistelli's Abuses Are Somehow Acceptable or Tolerable Because His Term is Possibly Ending

    Coverage of Martijn van Dam’s stance (he is the Dutch State Secretary for Economic Affairs) reveals that economic gain trumps ethics and justice, irrespective of what the law says



  5. Media and Staff Association Elections at EPO and WIPO Are Compromised

    A campaign of abuse (legal bullying) and gifting to the media, combined with a wide-ranging assault on critics who represent the interests of staff, have led WIPO and EPO down the route to totality



  6. New Documents Help Demonstrate That ILO Delivers Institutional Injustice to EPO Employees and Cushions Team Battistelli

    The International Labour Organisation Administrative Tribunal (ILOAT) delivers not justice but merely the illusion of justice, probably in defiance of Article 6 of the European Convention on Human Rights (ECHR)



  7. Leaked: 2017 European Inventor Award Finalists, or Stooges Whom the Tyrant Battistelli Exploits for PR Purposes and Media Manipulation

    The stupidest ceremony in Europe (turning serious science into something sketchy such as Eurovision) is disliked among EPO staff and is exploited by the person who destroys the EPO (Benoît Battistelli) to pretend all is fine and dandy, at huge expense to the Office (as extraordinary as about 5 million Euros for a ~2-hour show)



  8. EPO: Can the Staff Union of the European Patent Office (SUEPO) Still Save It?

    Genuine concerns about the slow process at the European Court of Human Rights (ECHR) and the lack of progress at ILO, which coincide with weakening of the unions and threat to jobs of patent examiners (leaving ordinary Europeans more vulnerable to meritless patent lawsuits)



  9. Links 21/5/2017: Linux 3.18.53, Tizen 4.0

    Links for the day



  10. Cloudflare's Enemy is Software Patents, Not Just One Software Patent or One Patent Troll

    With a bounty of $50,000, which is likely less than the cost of legal defense, Cloudflare looks for help with its own case rather than the underlying issues that need tackling worldwide



  11. Patent Laws -- and Especially Eligibility of Software Patents -- Are Being Hijacked by Large Corporations and Their Front Groups

    Intervention by large multinational corporations and their lawyers, front groups, etc. (like the classic lobbying model) gives room for concern in multiple continents where most software development is done



  12. Links 18/5/2017: Catching Up With the Past Three Days

    Links for the day



  13. The US Supreme Court Consults USPTO Director Michelle Lee Regarding the Patent Trial and Appeal Board (PTAB) Which is Invalidating Software Patents With CAFC's Approval

    Software patents continue to get knocked out by the Leahy-Smith America Invents Act (AIA) whose introduction of PTAB gave a helping hand to companies that are susceptible to abusive litigation (with bogus patents)



  14. IBM and Its Revolving Doors Lobby Are Plotting to Undermine Supreme Court Rulings to Restore Patentability of Software

    IBM has become so evil that it is now trying to steal democracy, label programmers "thieves", and basically attack the rule of law by extra-judicially overturning a Supreme Court decision



  15. 3 Years After the Alice Case at the Supreme Court the Plague of Software Patents is Easier to Cope With

    Litigation figures are down, rejection rates of software patents remain high, and only spin (e.g. cherry-picking) or constant lobbying can save those who used to profit from software patents



  16. The Attacks of Patent Trolls as Outlined in the Media This Past Week

    An outline of some of the latest troll cases to be aware of and their consequences too (e.g. software patents being used to literally shut down entire programs)



  17. Links 14/5/2017: Linux 4.12 RC1 and KDE Frameworks 5.34.0

    Links for the day



  18. Industry Giants Challenge Qualcomm's Patent Practices While the Federal Trade Commission (FTC) Closely Examines Such Behavior

    Scrutiny of Qualcomm's patent aggression and coercion -- scrutiny that can profoundly change the way software patents, SEPs and FRAND are viewed -- as seen in various amicus briefs (amici) from industry giants that are affected



  19. Professor Lisa Larrimore Ouellette Questions Whether Patents Work When Patent Scope is Too Broad

    Citing MIT economist (and MacArthur “genius”) Heidi Williams, Professor Lisa Larrimore Ouellette from Stanford challenges old myths and quotes: “we still have essentially no credible empirical evidence on the seemingly simple question of whether stronger patent rights—either longer patent terms or broader patent rights—encourage research investments.”



  20. OIN is Still a Distraction Unless We Want GNU/Linux to Coexist With Software Patents (Rather Than Eliminate Those)

    Another wave of media coverage by/for the Open Invention Network (OIN) necessitates a reminder of what OIN stands for and why it is not tackling the biggest problems which Free/Open Source software (FOSS) faces



  21. Links 13/5/2017: Neptune Plasma 5 ISO, a Shift to Free (FOSS) Databases

    Links for the day



  22. Countries With a Dozen European Patents Are an Easy Photo-Op 'Sell' for Battistelli While the EPO's Demise is Largely Ignored by the Patent Microcosm

    Behind the façade of legitimacy, the EPO suffers from an incompetent, insecure and delusional boss, whose actions will almost certainly lead to the collapse of both the Office and the entire Organisation (whose founding document he routinely shreds to pieces)



  23. Our Assessment: Unitary Patent (UPC) Will Crumble Along With Battistelli's Regime at the EPO

    A reflection and an opinion on where the EPO stands and what it means for the UPC, which doesn't seem to be going anywhere (it's all talk and lobbying)



  24. The European Patent Office Has a Long History/Track Record of 'Screwing' Contractors

    The European Patent Office (EPO) appears to have quite an extensive track record/reputation for ‘screwing’ contractors and then misusing immunity to get away with it



  25. Links 12/5/2017: Wine 2.8, Kdenlive 17.04.1, NHS Windows Syndrome

    Links for the day



  26. Links 11/5/2017: New OpenShot, GIMP, and GNOME (3.24.2)

    Links for the day



  27. The Sickness of the EPO – Part IX: Using Confidential Medical Records as a Weapon Against Staff

    In defiance/violation of labour laws and medical oaths etc. the EPO is passing around medical information, either for dismissal pretexts or a sort of blackmail -- a serious abuse in its own right



  28. The EPO is in Disarray and Additional Complaints to the European Court of Human Rights (ECHR) May Be Imminent

    Team Battistelli reaps what it has sown, as complaints are being made to a court with “47 member states [that] are contracting parties to the Convention,” (European Convention on Human Rights) according to Wikipedia



  29. By Promoting the UPC, in Defiance of Public Will, the EPO Has Become Patent Trolls' Best Friend

    The patent–industrial complex, aided by the EPO under Battistelli's iron-fisted reign, is trying to convince us that the UPC is coming soon and that it is desirable (it's neither of those things)



  30. Links 10/5/2017: Mesa 17.1, Git 2.13, Qt Creator 4.3 RC1, MINIX 3.4 RC6

    Links for the day


CoPilotCo

RSS 64x64RSS Feed: subscribe to the RSS feed for regular updates

Home iconSite Wiki: You can improve this site by helping the extension of the site's content

Home iconSite Home: Background about the site and some key features in the front page

Chat iconIRC Channel: Come and chat with us in real time

CoPilotCo

Recent Posts