April 27, 2004

XSLT 2.0 and XPath 2.0 books by Michael Kay!

Hey, just look at that: Michael Kay, author of the famous "XSLT : Programmer's Reference" book, developer of Saxon XSLT and XQuery processor and Editor of XSLT 2.0 spec, has announced his next generation books. He has splitted XSLT 2.0 and XPath 2.0, which sounds quite reasonable considering huge growth ...

April 25, 2004

My XInclude article is online at MSDN XML Dev Center

I did it again. My second article has been published at MSDN. It's about XInclude itself and XInclude.NET project. It's named "Combining XML Documents with XInclude". It gives quite comprehensive introduction to the XInclude and XPointer processing model, syntax and semantics. Also practical questions of combining XML documents using XInclude.NET ...

April 20, 2004

Daniel solved in-memory XML validation problem

I like these things. Looks like Daniel solved the famous in-memory XML document validation problem (which I thought is unsolvable!) with XPathNavigatorReader. ...

You can validate against XML Schemas that only define the node where you're standing. The following code validates all expensive books with a narrow schema, instead of a full-blown Pubs schema:
XmlSchema sch = XmlSchema.Read(expensiveBooksSchemaLocation, null);
// Select expensive books.
XPathNodeIterator it = navigator.Select("//titles[price > 10]");
while (it.MoveNext())
{
  // Create a validating reader over an XPathNavigatorReader 
  // for the current node.
  XmlValidatingReader vr = new XmlValidatingReader(
    new XPathNavigatorReader(it.Current));

  // Add the schema for the current node.
  vr.Schemas.Add(sch);

  // Validate it!
  while (vr.Read()) {}
}
This opens the possiblity for modular validation of documents, which is specially useful when you have generic XML processing layers that validate selectively depending on namespaces, for example. What's more, this feature really starts making the XPathDocument/XPathNavigator combination a more feature-complete option to XmlDocument when you only need read-only access to the document.
That's great deal cool. The core problem with XmlValidatingReader is that it requires input to be XmlTextReader and moreover, it calls internal XmlTextReader members. Here is the trick (or hack, whatever): derive from XmlTextReader and cheat the constructor:
public class XPathNavigatorReader : XmlTextReader
{
  public XPathNavigatorReader(XPathNavigator navigator) :
    base(new StringReader(String.Empty))
  ...
And then override XmlTextReader methods (as Daniel did, reading XPathNavigator instead).
What I was thinking about? How could I miss such easy solution? :(

Congrats, Daniel! The best XML.NET hacker hat is yours :)

XPathNavigatorReader is a part of the Mvp.Xml project. I'm going to move the rest of my XML Bestary to the project, test it and then I believe we can step in with the first public release of the Mvp.Xml library, there is enough beef to think about practical usage, not just prototyping.

April 18, 2004

New Microsoft Office XML schemas and documentation pack

Well, I'm probably the last one on this, but anyway: Microsoft released new pack of Office XML schemas and related documentation. What's included? WordprocessingML (Word), SpreadsheetML (Excel), FormTemplate XML (InfoPath) and (new!) DataDiagramingML (Visio) XSD schemas, overviews and other reference docs. Good one. Installed. ...

XInclude.NET on Microsoft Downloads site

Funny thing happened with XInclude.NET 1.2 release. Somehow it appeared on Microsoft Downloads and the "mindless link propagation" has started - Mike Gunderloy in "The Daily Grind 350" has called it "XInclude.NET 1.2 - Microsoft implementation of the November 2003 working draft of XInclude.", James Avery forwarded it in the ...

Multiple accounts on a single news server and Mozilla Mail (and mozilla based beasts like Thunderbird)

There is a severe problem when using Mozilla Mail and News client (and derivatives such as Thunderbird Mail) - they don't support multiple accounts on the same NNTP server. You know what I mean, right? Yeah, that's about Microsoft private newsgroups. They are using the same news server - privatenews.microsoft.com ...

April 15, 2004

Visio goes XML

Hey, look at this cool stuff: On to something more pleasant: Microsoft is continuing to advance on the openness front. There are all those weblogs that I've mentioned a time or six, there's the open-source release of the WiX installer tools (http://sourceforge.net/projects/wix/) and now (as of today, in fact) there's ...

New Office XML book

I've been told privately this book is going to be totally a killer: "Office 2003 XML: Integrating Office with the Rest of the World" by Evan Lenz, Mary McRae, and Simon St. Laurent This book explores the relationship between XML and Office 2003, examining how the various products in the ...

April 13, 2004

XInclude is back, Candidate Recommendation for the third time

XInclude reminds me a little poor ant, which climbs up a wall, falls, climbs, falls again and climbs anyway. Today XInclude became Candidate Recommendation for the third time! W3C is pleased to announce the advancement of XML Inclusions (XInclude) Version 1.0 to Candidate Recommendation. XInclude introduces a generic mechanism for ...

April 12, 2004

xml:id gets First Working Draft

In related news - The XML Core Working Group has released the First Public Working Draft of xml:id Version 1.0. The specification introduces a predefined attribute name that can always be treated as an ID and hence can always be recognized. What can be said? At last! Finally! xml:id Version ...

XML Processing Model and Language Requirements published

Something new and intriguing has been published by W3C - XML Processing Model and Language Requirements. This specification contains requirements on an XML Processing Model and Language for the description of XML process interactions in order to address these issues. This specification is concerned with the conceptual model of XML ...

Don Box gets ASMX sans IIS

Don Box runs HTTP-based ASMX services without IIS (in Whidbey of course). Really cool. ...

Cut API

So Dare said it - unfortunately XmlAdapter and XPathChangeNavigator won't make it into System.Xml v2.0. Funny enough, but looks like I was right in my assumption about what's gonna be cut. Well, without these System.Xml v2.0 probably won't be so harmonious and beautiful as Mark has described in his "First ...

April 11, 2004

XPath for HTML: JavaScript implementation of DOM Level 3 XPath for IE

Dimitri has posted a JavaScript implementation of W3C DOM Level 3 XPath for Microsoft Internet Explorer. It allows to use XPath with a plain-vanilla HTML. Looks interesting. I don't work with HTML DOM for a long time, but thinking about it now I realize I can do just nothing without ...

RSS Bandit speaks Russian

Ok, once I volunteered to make Russian translation for RSS Bandit - my favorite RSS aggregator, so finally I had to do it. It took me couple of days of my vacation time and it wasn't easy. There are just no established Russian translations for RSS terms, even for basic ...

April 6, 2004

WordML to HTML story continues - now with Microsoft Word 2003 XML Viewer

Microsoft has released another WordML to HTML transfromer - Word 2003 XML Viewer (thanks to Sal for pointing that). As I expected due to images issue it won't be single XSLT stylesheet such one as was released for Word 2003 Beta 2. This time it's complete viewer application, not just ...

40 years of mainframes

/. reminds it's 40-years anniversary of IBM mainframes tomorrow. Read "IBM's Mainframe Dinosaur Turns 40" thread. Mainframes still host 70% of the world's data and applications (well, IBM says that, granted) and they feel good in modern PC world. "PCs were supposed to kill off the mainframe" he-he-he. Not so ...

April 4, 2004

BizTalk Server 2004 SDK Refresh

The BizTalk Server 2004 SDK Refresh contains updates and additions to samples, utilities, headers, and other developer artifacts to aide in the development of BizTalk Server 2004 applications. Download here. [Via Bryant Likes] ...

MSDN Subscriber Downloads gets RSS feed

Good news for MSDN subscribers: be notified of new downloads available from MSDN Subscriber Downloads via this RSS feed. ...