2006 Feb 02
1 of 21 | .NET 2.0 XML Perf Comparison with Sun - As presented in my article on System.Xml Beta 1 (which was effectively re-written into the Beta 2 version of my System.Xml book) the #1 feature in the .NET 2.0 release for System.Xml was performance. In the past Sun has come out bashing the XML performance support in .NET 1.1 which I wrote about here. Now all has been vindicated officially with an XML performance comparison report between .NET 2.0 Beta2, .NET 1.1, and Sun Java 1.5 Platforms. Simply by looking at the bar charts, in the majority of scenarios .NET 2.0 Beta 2 was twice as fast as the Sun implementation when parsing XML. Superb!
Furthermore here is a comparison article for Web Services performance between .N......
2 of 21 | ADO.NET and System.Xml v. 2.0--The Beta Version (2nd Edition) now Published - In time for the upcoming Visual Studio 2005 and .NET v2.0 Beta 2 release, the updated version of my ADO.NET and System.Xml book has now been published. See this book list for more information and where to download the code examples from. Alternatively just buy a copy so that I can feed my children and bribe my wife to convince her that the hours of writing were worthwhile. If you bought a copy of the first version of this book, this version is a total re-write and twice as thick, reflecting that a year and a half changes a product in many ways. Given that this is on ADO.NET it also covers features from SQL Server 2005 and complements Bob Beauchemin's et al book&nbs......
3 of 21 | System.Xml v2 Articles posted by Alex Homer - Alex has written two good overview articles on System.Xml in .NET v2.0 - part 1 on the XmlReader and part 2 on the XmlWriter....
4 of 21 | System.Xml V2 Decisions - Arpan has posted on some of the reasons for XmlDocument being the main XML store in System.Xml and the difficulty of supporting standards that are not yet at a recommendation status. Ironically I now find myself in the alternate universe to this where WS-* specifications seem to pop in and out of existence on a daily basis, having to incorporate these into a fast changing project that is laying the path to Indigo. I have been working on WSE 3.0 planning this week and hope to post some more details of the release in the coming weeks. Currently these are the WSE 3.0 themes that I am using to drive the project, which sets the precedence for the features. VS2005 (Whidbey) Integration ......
2006 Jan 13
5 of 21 | Anders Hejlsberg on XML and Programming Languages - One good reason to sign up for PDC 2005 is to hear Anders elaborate more on this work...
6 of 21 | Article on the XML Support in SQL Server 2005 - I worked with Shankar to write this article on the XML Support in Microsoft SQL Server 2005 which has just been published on the MSDN XML Developer Center. I would be very interested in comments on how you see an application need for storing XML content in a relational database along with querying and working with this data. E.g. The ability to store WordML documents created from Office 2003....
7 of 21 | TechEd 2004 XML Talk Slides - I have finally posted the slides and sample code for my TechEd 2004 talk on XML in the .NET framework. The samples require a copy of Visual Studio 2005 (i.e. the community drop distributed at TechEd) in order to compile and run....
2005 Jun 14
8 of 21 | .NET 2.0 XML Perf Comparison with Sun - As presented in my article on System.Xml Beta 1 (which was effectively re-written into the Beta 2 version of my System.Xml book) the #1 feature in the .NET 2.0 release for System.Xml was performance. In the past Sun has come out bashing the XML performance support in .NET 1.1 which I wrote about here. Now all has been vindicated officially with an XML performance comparison report between .NET 2.0 Beta2, .NET 1.1, and Sun Java 1.5 Platforms. Simply by looking at the bar charts, in the majority of scenarios .NET 2.0 Beta 2 was twice as fast as the Sun implementation when parsing XML. Superb!
Furthermore here is a comparison article for Web Services performance between .N......
2005 Feb 12
9 of 21 | Combining the XmlReader and XmlWriter classes for simple streaming transformations - The XmlReader and XmlWriter classes can often be combined to provide simple streaming transformations rather than resorting to XSLT which requires a the document to be loaded into memory. This class combination is often faster and uses less memory, although it requires more code and is less flexible in the types of transformations possible. However for many scenarios it is ideal. Say for example you wanted to add a new element in several repeating places to an existing document. The XmlWriter.WriteNode method is useful in pulling from an XmlReader and pushing to an XmlWriter to achieve this, but it does have a limitation in that it writes the current node and all its children to the XmlWri......
2005 Feb 04
10 of 21 | System.Xml V2 book - C`est Fini - I finished reviewing the final versions of my chapters for the ADO.NET and System.Xml v 2.0 book which was a huge relief. Having read through it numerous times you start to get numb to your writing style. Needless to say the chapters where all re-written from scratch with completely new content throughout with my favorite being chapter 9, simply because I was closest to the XmlReader and XmlWriter. For instance it has an example of an XmlWriter.WriteShallowNode (XmlReader reader) method which enables you to do easier XmlReader to XmlWriter transformations by enabling single nodes to be written, rather than whole sub-trees. Here is the list of the chapters from the v2 book. Chapter 1: New......
2005 Jan 14
11 of 21 | Binary XML: A Stillborn Spec. - I read with continued dismay another article about binary XML and the bizarre Fast Infoset project. Tim Bray must be crying in bed at night over Sun`s continued persistence that ASN.1 should have been the data interchange format for the world. It lost, XML won and XML works. Go and solve other more useful problems. You only have to look at the failure of XML 1.1, as it split the XML standard into incompatible versions to draw the same analogy with binary XML. CPUs continue to fall in price and if needs dictate, XML processing in hardware will take off to solve the issues of processing time. Not yet another proprietary data format. Just as bad is the W3Cs continued mismanagement by creating ......
2004 Nov 11
12 of 21 | Beta Book Pain, Performance Love - Writing books on beta products is probably the most painful thing that you can ever endure even if you are in the product team (or was as in my case). I finally finished up the last XML chapter in the beta version of ADO.NET and System.Xml V2. It is a vast brain dump of the delta between V1.1 and V2.0 for System.Xml coupled with the numerous changes since the PDC 2003 preview release. However I was not able to cover the #1 feature enough of System.Xml V2.0 - performance. This will have to wait for any potential future final version of the book depending on sales of this one of course. All I can say is that you will not be disappointed - the XML team has done an incredible job. Every compone......
13 of 21 | Beta Book Pain, Performance Love - Writing books on beta products is probably the most painful thing that you can ever endure even if you are in the product team (or was as in my case). I finally finished up the last XML chapter in the beta version of ADO.NET and System.Xml V2. It is a vast brain dump of the delta between V1.1 and V2.0 for System.Xml coupled with the numerous changes since the PDC 2003 preview release. However I was not able to cover the #1 feature enough of System.Xml V2.0 - performance. This will have to wait for any potential future final version of the book depending on sales of this one of course. All I can say is that you will not be disappointed - the XML team has done an incredible job. Every compone......
2004 Oct 14
14 of 21 | System.Xml Beta 2 Changes - Dare and I compiled the Upcoming Changes to System.Xml in .NET Framework 2.0 Beta 2 which he published on the MSDN XML developer center. Mostly my previous article still stands without the #6 and #3 gone. However as a result of implementing the editablable XPathNavigator over the XmlDocument class this has forced us to re-address performance issues with the DOM.Performance is still the top goal for the version 2.0 release and we continues to make improvements. Recently we found that by rewriting the date handling support in the XML Schema processor gave significant performance improvements in certain scenarios. The goal performance goal - to be as good as or better than MSXML 4.0 which has ......
15 of 21 | System.Xml Beta 2 Changes - Dare and I compiled the Upcoming Changes to System.Xml in .NET Framework 2.0 Beta 2 which he published on the MSDN XML developer center. Mostly my previous article still stands without the #6 and #3 gone. However as a result of implementing the editablable XPathNavigator over the XmlDocument class this has forced us to re-address performance issues with the DOM.Performance is still the top goal for the version 2.0 release and we continues to make improvements. Recently we found that by rewriting the date handling support in the XML Schema processor gave significant performance improvements in certain scenarios. The goal performance goal - to be as good as or better than MSXML 4.0 which has ......
16 of 21 | Using the XmlSecureResolver to restrict access to web sites - Having just written an article on XmlResolver and looked through the MSDN docs I realised that there was little in terms of explanation on how to use the XmlSecureResolver. As always code speaks volumes sIo put together this example which shows how the XmlSecureResolver can be used to restrict access to specific web sites. The XmlSecureResolver secures another implementation of an XmlResolver by wrapping the supplied XmlResolver and restricting the resources that it has access to. For instance, the XmlSecureResolver has the ability to prohibit access to particular internet sites or zones. public static void UsingXmlSecureResolverToAccessURIs() { try { WebPermission ......
17 of 21 | Using the XmlSecureResolver to restrict access to web sites - Having just written an article on XmlResolver and looked through the MSDN docs I realised that there was little in terms of explanation on how to use the XmlSecureResolver. As always code speaks volumes sIo put together this example which shows how the XmlSecureResolver can be used to restrict access to specific web sites. The XmlSecureResolver secures another implementation of an XmlResolver by wrapping the supplied XmlResolver and restricting the resources that it has access to. For instance, the XmlSecureResolver has the ability to prohibit access to particular internet sites or zones. public static void UsingXmlSecureResolverToAccessURIs() { try { WebPermission ......
2004 Oct 04
18 of 21 | Win-Dev 2004 talks on XQuery in SQL Server and System.Xml V2.0 - I am doing two talks at the Win-Dev 2004 Conference on the Web Services track and the Databases and Data Access so if you are going to the conference or live in the Boston area and want to meet up to have a chat, drop me a mail. The talks are; WS6 - Whidbey System.XmlMark Fussell Microsoft`s System.Xml proved to be revolutionary for working with XML in a variety of different ways. This innovation has continued in the new Whidbey release with various enhancements and new features that simplify development and increase flexibility. This session will introduce you to the various improvements found in Whidbey`s System.Xml. D4 - XQuery in SQL Server 2005 and System.XmlMark Fussell XML brings ......
19 of 21 | Win-Dev 2004 talks on XQuery in SQL Server and System.Xml V2.0 - I am doing two talks at the Win-Dev 2004 Conference on the Web Services track and the Databases and Data Access so if you are going to the conference or live in the Boston area and want to meet up to have a chat, drop me a mail. The talks are; WS6 - Whidbey System.XmlMark Fussell Microsoft`s System.Xml proved to be revolutionary for working with XML in a variety of different ways. This innovation has continued in the new Whidbey release with various enhancements and new features that simplify development and increase flexibility. This session will introduce you to the various improvements found in Whidbey`s System.Xml. D4 - XQuery in SQL Server 2005 and System.XmlMark Fussell XML brings ......
2004 Oct 03
20 of 21 | Building Custom XmlResolvers Article on MSDN XML Developer Center - In between re-writing and updating the chapters for the beta version of the my book A First Look at ADO.NET and System.Xml V2.0, I found some time to write an article on Building Custom XmlResolvers for MSDN. What`s so great about this class is that it enables you to redirect the location of the XML that you want to load, as well as allowing you to define your own schemes, if necessary (e.g. db:// to load from a database). There are all sorts of great things that you can do with an XmlResolver and you can come up with some fairly intelligent caching solutions if your applications needs this. One aspect that I did not cover in this article is the use of the credentials property of the XmlRes......
21 of 21 | Building Custom XmlResolvers Article on MSDN XML Developer Center - In between re-writing and updating the chapters for the beta version of the my book A First Look at ADO.NET and System.Xml V2.0, I found some time to write an article on Building Custom XmlResolvers for MSDN. What`s so great about this class is that it enables you to redirect the location of the XML that you want to load, as well as allowing you to define your own schemes, if necessary (e.g. db:// to load from a database). There are all sorts of great things that you can do with an XmlResolver and you can come up with some fairly intelligent caching solutions if your applications needs this. One aspect that I did not cover in this article is the use of the credentials property of the XmlRes......