Microsoft Office 2003 Editions: Overview of Developer TechnologiesSeptember 2004
XML Reference Schemas for Documents and Templates
XML Schema is a standard recommended by the World Wide Web Consortium (W3C). An XML schema defines the set of tags in an XML document and the rules for applying them. Schemas define the structure and type of data that each data element in a document can contain. Anyone can create a schema to define and qualify the content for their application; Microsoft defined schemas that abide by the XML Schema 1.0 recommendation for Word documents, Excel spreadsheets and InfoPath form templates. For Microsoft Office Word 2003 and Microsoft Office Excel 2003, you can view these schemas as alternative file formats to the well-known binary (.doc and .xls) formats. The schema for Microsoft Office InfoPath 2003 defines the structure for InfoPath forms.
XML Reference Schema Benefits
In the past, when working with the binary file formats for Office 2003 Editions, it was difficult to interpret content without starting the appropriate Office program and automating it through its object model. Not only is it inefficient for any Office program to begin, but the Office programs were not written and are not supported to be run on a server. This restricted how you could use document content.
The advent of an XML file format changes this restriction. XML is text-based and can be read and manipulated outside of the Office programs by using any tools and techniques that support the XML standards. This opens up a number of interesting and beneficial scenarios for developers:
Creating a document on a server. You can assemble XML on a server to create a Word document, Excel spreadsheet or InfoPath form template fully. For Word and Excel, you can accomplish this by retrieving information from a database or Web service and applying an XML transform (XSLT) that adds formatting and structure to result in a rich document. This is a useful technique for the automated creation of any type of document. You can use this technique, for example, to create a report periodically such as an on demand, customized report, or a document with customized information specific to many individuals, e.g. thousands or millions of customers.
Reuse, indexing, and searching of document data. When documents are created, they often need information copied from existing documents, particularly those created from the same template. For example, sales proposals are created repetitiously. Previously created information is reused when pulling together proposals to customers from similar types of companies.
In the past, it was difficult for a user to find the right document with the most appropriate related information, and if found, users copied information manually into the new document. It also was difficult for a developer to build a solution to help the user since information was difficult to access from the binary file formats. With the XML file formats, Office 2003 Editions save documents as text files. Consequently, you can process them using many standard XML processing techniques to find needed information efficiently and then extract just the desired section from an existing document. XML helps you build such a solution in much less time than it took previously. The XML-based solution allows the user to complete a task more efficiently without having to know anything about XML.
Sharing data across heterogeneous systems. XML is used today as a means of data interchange for the reasons mentioned previously. Since it is text-based, you can read XML documents on all platforms. Sharing binary documents is not as easy since they are captive to platform issues such as storage formats and byte order. Information can’t be easily extracted from a binary file without sharing a low-level programming protocol to read the file. With XML, cross-platform computer-based processing is
© 2006 Microsoft Corporation. All rights reserved. Page 5 By using or providing feedback on these materials, you agree to the attached license agreement.
To comment on this paper or request more documentation on these developer features, contact us at . We look forward to hearing from you.