BizTalk Utilities CV ,   Jobs ,   Code library
 
Go to the front page to continue learning about XML or select below:

Contents

ReBlogger Contents

 
WSE
SOA
XML

 
 

All posts by : mikechampions weblog

Page 1 of 1

2008 Apr 01

1 of 30 | Web Services Standards and .NET Interoperability - Successive versions of the .NET framework closely track the evolution of the WS-* specs as they progress from publication, to submissions to W3C or OASIS, and ultimately as W3C Recommendations or OASIS Standards. See for example the list of supported interoperability specs in .NET 3.0 (which shipped with Vista) and .NET 3.5 (which shipped with Visual Studio 2008), noting how the later release referenced the final standard for several specs whereas the earlier versions referenced the original submission.  Not only does Microsoft closely track the standard version of specifications, Microsoft invests in helping other companies do similarly.  One way is by sponsoring  “p......

2007 Jun 06

2 of 30 | WS-Bandwagon or WS-JustRight? - My previous post used WS-Management to illustrate the larger point that  "the WS technologies are taking hold, deep down in the infrastructure, doing the mundane but mission critical work for which they were designed."  Perhaps because  WS-Management is one of the more controversial bits of the WS-* infrastructure, that example stimulated more pushback than the other example I used -- the increasing success of the WS-* based identity metasystem (which is a lot more newsworthy at the moment).   But it's easy to justify the value of standards and open source work in the identity space, where the prevalence of phishing indicates that the web does not have a good n......

2007 May 21

3 of 30 | WS-* and the Hype Cycle - There's a persistent theme talked up by WS-*ophobes that it's all just a fad, rapidly sliding down toward the "Trough of Dilillusionment" in the Gartner Hype Cycle. I've come to the opposite conclusion after six weeks back in the web services world.  The WS technologies are taking hold, deep down in the infrastructure, doing the mundane but mission critical work for which they were designed.  Let's consider one example, WS-Management, which I had barely heard of when I started in CSD Interoperability. It's stated purpose is: To promote interoperability between management applications and managed resources, this specification identifies a core set of Web service specifications a......

2007 May 15

4 of 30 | The Secret of LINQ Design - A team within Microsoft ran an "app week" recently to build applications that implement customer scenarios using a variety of LINQ technologies.  The feedback on LINQ to XML was uniformly positive. The participants were not XML geeks, but more like our target audience: developers who come across XML now and then and need to deal with it without undue fuss. This group found that they were immediately productive without having to read the documentation, because the APIs worked the way one intuitively thought they should.  This set off an interesting internal thread speculating on why LINQ to XML was successful in achieving its design objectives in a world (and to be honest, a compan......

2007 May 03

5 of 30 | Accelerating Evolution: LINQ News from Mix 2007 - There is a lot of interesting (and once confidential) stuff that came out of the Mix conference this week. Jon Udell's  "Watching Anders Hejlsberg reinvent the relationship between programs and data" ... offers an enthusiastic summary: A lot of the time, when we use the web, we’re effectively performing joins among data sources. You visit one site to look up some data, then you grab some of it and plug it into another site. If you’re lucky, somebody will have built a mashup, on a third site, to facilitate that join. But what if your browser had the data manipulation chops to help you do that mashup directly? I’m hoping that technologies like Silverlight and LINQ will enable thing......

2007 May 01

6 of 30 | Reporting for duty on WS-Deathstar - After an enjoyable and extremely educational 2 1/2 years on the core XML team in SQL Data Programmability at Microsoft, I've moved to a position in the Connected Systems Division's Interoperability unit.  Responsibilities include representing Microsoft on the W3C, helping with web services standards partnerships, and generally helping the world understand the method behind the apparent WS-Madness, or at least the subset of it that Microsoft endorses. "Huh?" you might ask.  Why voluntarily join the doomed crew of WS-Deathstar?  Or maybe the WS-* crowd are not evil, they're  weenies who get sand kicked in their faces? As with XML itself, the point isn't......

2007 Jan 12

7 of 30 | Convergence Zones - I had a lot of time to think about Elliotte Harold's call for XML predictions on the way home from Redmond Wednesday night.  We got several inches of snow, which is rare here and the highway folks just can't deal with . There were massive traffic tieups, and lots of time spent staring off into the snowflakes. Most of us commuters were caught off-guard by the snow, since the forecast was something like "cloudy with a chance of snow showers".  That's not inaccurate, but not very helpful ... like most of those "successful" beginning-of-2006 predictions pundits are bragging about this month. Our unexpectedly intense snow yesterday was created by a Puget Sound Convergence Zone: Those ......

2006 Dec 21

8 of 30 | The JSON vs XML debate begins in earnest -   After seeing  Douglas Crockford's talk on JSON at XML 2006 recently, I figured that some sort of great debate between XML and JSON advocates was brewing.  I had been waiting for Elliotte Harold's rebuttal of what Crockford is missing, but haven't seen it yet.  What has happened is that Dave Winer got off a  rant against JSON as reinventing XML's (and more specifically XML-RPC's) wheel: God bless the re-inventers Gotta love em, because there's no way they're going to stop breaking what works, and fixing what don't need no fixing Crockford gets off a very pithy response:  The good thing about reinventing the wheel is that you can get a round one. There are ......

2006 Dec 14

9 of 30 | Potential at the Trailing Edge - Lots of people linked to the happy news last week that Jon Udell was joining Microsoft, so I didn't bother.  I have previously recommended  his great interview with Anders Hejlsberg.  This is a clear, concise, hands-on demonstration of LINQ (including LINQ to XML) that feels like Anders stopped by your office to explain it in person.  I have to credit the interviewer for a lot of that. I met Jon Udell at the XML 2003 conference, and blogged about it in my previous home on the web. I remember one interaction well: I had (a year or so before joining Microsoft) just bought a Mac Powerbook and noticed that he and most of the other really cool people......

2006 Dec 11

10 of 30 | The Model T and the Prius: Simplicity vs Complexity, yet again - My favorite conundrum, the difficulty of being simple, pops up everywhere I look these days.  OpenXML document format vs the Open Document Format Point: OpenXML is so complex no one else can implement it. Counterpoint: Its complexity is due to the existing features of MS Office, which are reflected in the old binary format and faithfully preserved in OpenXML. W3C XML Schema vs RELAX NG Point: XSD is hard to read, hard to write, hard to understand and should be scrapped.  Counterpoint: Namespaces, URIs, DOM, and others are also horrible specs, but real people use them all to get the job done. WS-* vs REST Point: Stand up to the forces of WS-Complexity and speak ......

2006 Dec 08

11 of 30 | XML 2006 Observations - I could only attend half the conference due to a family health issue, but here are some thoughts on what I did see.  The links are mainly to the conference program; I believe the entries will eventually link to the actual presentation slides and submitted papers. Roger Bamford’s keynote  spent much time showing how the high-level architecture of a typical enterprise application 30 years ago was not that much different than today:  3270 pages vs HTML pages, CICS transaction monitors vs app servers, and a back end DB that is a scarce resource that the rest of the system tries to offload.  There was a discussion of how “share nothing” approaches worked then and now to ach......

2006 Nov 13

12 of 30 | Rough Spots in the LINQ to XML Learning Curve - We've been doing some formal usability testing on all the LINQ components over the last couple of months and have learned a lot about what people have trouble learning. The results have generally validated LINQ's story as a common programming model for all types of data.  They's also identified some things that people find hard.  Some of these may be fixed with API tweaks, but for the most part they indicate what we have to do a better job of explaining. I've come up with the following list of things to keep in mind when working with LINQ to XML. Some will be explained in this post, others in subsequent posts. Clear your mind of SAX and DOM when approaching LINQ to XML; there are......

2006 Sep 22

13 of 30 | Declarative vs Imperative Streaming Input in LINQ to XML - Oleg Tkachenko has a nice post comparing the StAX (java) and XmlReader (.NET and XmlLite) approaches to streaming over a potentially large XML data source and filtering out unwanted elements.  He concludes: if you work with StAX you can readily work with .NET XmlReader and the other way. Great unification saves hours learning for developers. I wonder if streaming XML processing API should be standardized? We've been discussing how to add streaming capabilities onto LINQ to XML for some time now.  The value proposition is something like: Our target audience will sometimes encounter large documents or arbitrary streams of XML; they want the ease of use that LINQ to XML offers, b......

2006 Sep 10

14 of 30 | Using LINQ to XML Annotations - tracking line numbers - Several people have asked for a feature in LINQ to XML that would keep track of the line number in an XML data source from which each node was parsed.  We have resisted, partly because there doesn't seem to be a mainstream use case for this feature, and partly because the minimialist design philosophy behind LINQ: simple, mainstream scenarios should be supported out of the box, whereas more sophisticated use cases can be supported via the various extension mechanisms.  The code example below shows how to use C# 3.0 extension methods and LINQ to XML annotations to do this job.  The tricky part of this code is the  LoadWithLineInfo method, which sets up the XmlReader; an......

2006 Sep 01

15 of 30 | Not having to choose between a big ecosystem and cutting edge features - Joel Spolsky has an interesting post on the Language Wars -- the permanent debate among those who think their currently preferred programming language is the best.  He drew some heat from the blogosphere because he advocates a pragmatic approch for others ... Lisp and OCaml and lots of other languages ...are totally, truly brilliant programming languages worthy of great praise, but just don't have the gigantic ecosystem you need around them if you want to develop web software...The safe answer, for the Big Enterprisy Thing where you have no interest in being on the cutting edge, is C#, Java, PHP, or Python, since there's so much evidence that when it comes right down ......

2006 Aug 21

16 of 30 | More LINQ to XML examples from the real world - A few weeks ago I pulled together a post on LINQ to XML in action .  I came across a couple more very nice examples over the weekend.  One is from the LINQ Project forum. A question was posed asking about a clean way to to load a structured text file such as a logfile into an XLinq tree.  The example data was similar to this: #Fields: time ip http-method url status 12:37:18 127.0.0.1 GET /nowhere/gone.xml 40412:37:25 127.0.0.1 GET /somewhere/what.xml 401 Anders Hjelsberg offered this little snippet that illustrates how query operations (from, where, select, etc.) are integrated into C# and how functional construction lets you easily build  an XML fragment fro......

2006 Aug 18

17 of 30 | Update: The LINQ to XML extensibility story - In a previous post I wrote: There is no guarantee that XLinq classes can be subclassed effectively, although there are currently no plans to seal them.  The recommended way for applications to add functionality to XLinq is by using the annotation feature  to add application-defined objects to XLinq tree objects.  In other words, internal experience with building on top of XLinq has shown that the aggregation design pattern works better than inheritance to extend its functionality.  This is not firm guidance, just advice that we have a real goal of supporting extensibility via annotations and a non-goal of supporting extensibility via inheritance.  This is......

2006 Aug 13

18 of 30 | The lists to blogs transition - Once upon a time, I filled a little void in my life -- the one that many people fill with weblogs -- with the xml-dev mailing list.  For some reason due perhaps to my generation, or the way my head is wired, I find it easier to pull together an email response than a blog post.   That's probably not true for most people, and now a milestone may have been crossed since the xml-dev list has been offline since about the beginning of August. (An inquiry about this to http://xml.org/xml/contactus.shtml returned "500 - Internal Server Error.")  An alternate archive is at http://www.stylusstudio.com/xmldev/ so I guess the little nuggets of wisdom sc......

2006 Jul 20

19 of 30 | The "Halloween Problem" for XML APIs - Don't feel bad if you don't know what the Halloween problem is.  According to the Transact SQL Blog, it's the basis for an interview question that only guru level database programmers can be expected to answer: Halloween protection is needed to prevent a situation where the physical location of a row within a table changes due to an UPDATE operation. As a result, the same row may be revisited multiple times within the context of a single logical operation, which should not occur. So, what is this problem (and why is it called "Halloween")?  The most cited answer to this question that I could find seems to be a writeup of a 1995 reunion of SQL pioneers: Don Chamberlin: ... i......

2006 Jun 30

20 of 30 | What LINQ to XML will NOT do - One of the worst pitfalls a design team can fall into is trying to do too much.   The principle is captured by the well known quote: Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.  - Antoine de Saint-Exupery So, what has been taken away from  LINQ to XML (aka XLinq) in the pursuit of simplicity (if not perfection)? I'm in the process of documenting the "non-goals" for XLinq, and thought it would be good to share them and get some feedback. I discussed the non-goal of replacing XSLT as a tool for processing unstructured documents in a previous post.  Some other non-goals include: Guaranteeing t......

2006 Jun 27

21 of 30 | Thoughts about WinFS and related technologies - There's been a lot of discussion about the recent decision not to ship WinFS as a distinct product, but instead to incorporate its technologies into ADO.NET and SQL Server.  I don't have much to contribute to the discussion about WinFS itself since I didn't have anything to do with it.  I do find some of the commentary thought provoking about some larger XML-related questions, however.  OK, I guess I do feel the need to get a couple of things off my chest that I haven't seen beaten to death in other posts. I liked Stephen O'Grady's dissection of the announcement itself: "There's very little contrition in the post, very little apology or reflection. ... When you're announci......

2006 Jun 22

22 of 30 | Why does the world need another XML API? - The world has had a chance to look at the LINQ technologies a bit, and the overall response has been quite enthusiastic.  But now we're getting some harder questions about how various LINQ components relate to one another and to existing Microsoft technologies.  Let's compare XLinq --- oops sorry, LINQ to XML -- with some alternatives to tell the story of why we are building it and what that means for those who know and love the current generation.  One basic question keeps coming up, something like: "We have SAX, DOM, XmlReader/Writer APIs (and the Java people have a bunch more), we have XSLT, we have XQuery ... why do you think we need Yet Ano......

2006 Jun 12

23 of 30 | Please submit a proposal to speak at the XML 2006 Conference - I'll take a break from my XLinq focus to encourage people to submit a proposal to speak at the XML 2006 Conference (December 5-7, in Boston). I’m one of the track chairs for the “Enterprise XML Computing” track at the XML 2006 conference and my main job is to prod people into submitting proposals. Some specific topic suggests in the Call for Proposals http://2006.xmlconference.org/call-for-participation.html include: Can XML be made secure and efficient? Are Web Services living up to their early promises? Are other approches, like REST, too simplistic? Will a new generation of XML-aware appliances streamline enterprise networks? Is XML-based social software a fad, or can it ......

2006 Jun 07

24 of 30 | We know that XLinq rocks, but .... - As much as I appreciated Jim Wolley's response to a post on the xmlteam blog ... XLINQ is so simple that it doesn't need much discussion. (The same can't be said for the XML Dom which is another reason why I think XLINQ rocks) ... I hope people don't just trust us to do the right thing with XLinq.  We really want people to try it out, yell at us for things that aren't clear or don't work right, and let us know what DOM or XQuery or XSLT or JDOM/XOM does better. In the six months or so that I've been the program manager for XLinq, I've seen a lot of really beautiful designs go CRUNCH! against the nasty rocks of Reality.  Lots of bad things happen in the XML specs and in X......

2006 Jun 02

25 of 30 | Non-merging text nodes in XLinq: They're Baacckk!! - When I described the changes to XLinq in the May CTP, I said: Note that whereas DOM explicitly allows adjacent text nodes, the XLinq implementation will always merge XText nodes to correspond with the structure of XML text. This has the benefit that developers never need to check for multiple text nodes that contain a single element’s content. However, it does mean that you cannot rely on the identity of text nodes remaining stable because they may be merged into adjacent text nodes as edits are applied to the XLinq tree. ... If you must work with text nodes in this CTP version of XLinq, do not re-use them or assume that a reference to a text node will contain the correct data after c......

2006 May 31

26 of 30 | Reactions to LINQ in the Java world - We've been wondering what people who are focused on Java think about LINQ, so it's good to see some Roger Voss and Jonathan Bruce start the discussion.  A few very good points have come out that deserve some emphasis.  For example, Voss notes: There has arisen a mode of thinking in Java land that by embracing dynamic scripting languages we can essentially address shortcomings in Java or bolster Java with exciting new capabilities. The scripting language Groovy is perhaps the ultimate expression to date of this line of thinking. It is an appealing notion - why add new features to Java, such as an intrinsic XML type, when Groovy already has a great markup language feature th......

2006 May 20

27 of 30 | XLinq Design Issues - What Do You Think? - With the recent LINQ CTP, XLinq's feature set is getting close to what we plan to release in "Orcas".  The whole point of Community Technology Previews, of course, is to get feedback from potential customers about what they like, what they don't like, and what more they need in a product before the design is frozen.  Now is definitely the time to let us know what you think; there is some time, but not a lot of time to try this out and send feedback  (The target ship date for Orcas is not public, but since one main point of Orcas it to provide tooling for new Windows Vista and Office 2007 features, you might guess that "months not years" after these ship is the target dat......

2006 Feb 23

28 of 30 | XML Schema is the root of WS-Evil? - For some reason I don't really understand, Don Box's appeal for Pragmatics has had exactly the opposite effect from what I think was intended- more thunder from the RESTifarian  pulpits, not an consensus to do the simplest thing that actually works for the different types of problems we face.  Dare Obasanjo may not have liked my economy cars and trucks analogy, but I think he has the most apt diagnosis of what is generating all this - the W3C XML Schema Definition Language (XSD). After working with XSD for about three years, I came to the conclusion that XSD has held back the proliferation and advancement of XML technologies by about two or three years. The lack of ......

2006 Feb 17

29 of 30 | Don Box on Pragmatics vs Religion in web services technology - I see that Don Box is getting some pushback  from various folks on his post on Pragmatics.  Maybe this will make it a bit clearer :-) The following equipment purchase decisions are orthogonal, even though people often conflate two or more of them:   Whether one uses big trucks or economy cars Whether or not one prefers to buy from American or European/Asian manufacturers. Whether or not one buys fuel at retail or enters long-term wholesale contracts. The degree to which one relies on the specific details of a particular truck or car to make long term planning decisions. Whether one adopts a hub and spoke or point to point distribution network   &nbs......

2006 Jan 17

30 of 30 | New LINQ / XLinq Links - My resolutions to post here more often have been overwhelmed by the day job, I'm afraid.  I'm now in the process of taking over as Program Manager for XLinq as Dave Remy takes over the Group Program Manager role for our entire team.  That should get the blogging juices flowing more regularly, because we really need to tell the world about what we're doing and get a reality check to see which of the innovations address real problems, which might be hard to understand, which aren't real problems, etc.  Yes, I still "own" DOM and the business case for XQuery in the mid-tier, so I am feeling even more schizoid than usual :-) One task is to update Dave's XLinq Over......

Page 1 of 1

Newest posts
 

    Email TopXML