New Capabilities with the Open XML File Format Visual Studio Tools for Office Mike Ormond Developer and Platform Group, Microsoft Ltd

Slides:



Advertisements
Similar presentations
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
Advertisements

Solution Development Using the 2007 Microsoft Office System Open XML File Formats Microsoft Corporation.
Assembling, Repurposing And Manipulating Document Content Using The New Office File Format Brian Jones OFF 304 Program Manager Microsoft Corporation.
Designing InfoPath Forms: The Dos and Donts Deploying InfoPath Forms: Making the right choice Adding custom business logicin case the built-in stuff isnt.
Microsoft SharePoint 2010 technology for Developers
Standarder i Office 2007 Office OpenXML Pau Larsen Teknisk specialist Microsoft.
SharePoint 2007: Workflow and Digital Forms Neil Iversen Inetium.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
1 of 6 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
Microsoft Office Open XML Formats Brian Jones Lead Program Manager Microsoft Corporation.
SharePoint Collaboration Features & Workflow
It’s always better live. MSDN Events Developer Productivity Improvements with Visual Studio 2008 and Office Business Applications.
Using Microsoft SharePoint to Develop Workflow and Business Process Automation Ted Perrotte National Practice Manager, Quilogy, Microsoft Office SharePoint.
Today’s Agenda 14:30 Communication & Collaboration Platform 14:50 Portals & Document Management 15:10 Enterprise Project Management 15:30 Break 15:50 Business.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
The Microsoft Office System A Platform for Organizational Productivity Solutions Mark Quirk Head of Technology Developer & Platform Group Microsoft UK.
Developing for the Microsoft Office System Jay Schmelzer Group Program Manager – Visual Studio.
Create with SharePoint 2010 Jen Dodd Sr. Solutions Consultant
OFC302 Building Smart Document Solutions in Word & Excel Martin Sawicki Lead Program Manager.
Ribbon UI SharePoint Workspace SharePoint Mobile Office Client and Office Web App Integration Standards Support Tagging, Tag Cloud, Ratings Social.
OFC304 Excel 2003 Overview: XML Support Joseph Chirilov Program Manager.
Microsoft Confidential Office as a Development Platform Tim Heuer
Office Live Workspace Visio 2007 Outlook 2007 Groove 2007 Access 2007 Excel 2007 Word 2007.
Lisa Ruff Business Productivity/Accessibility TS Microsoft Federal.
Microsoft Office InfoPath 2007 Development, Deployment, And Hosting For Rich And Browser Forms Jessica Gruber Consultant Microsoft Corporation.
OFC 303 Advanced Word XML: Customer-Defined Schemas Brian Jones Program Manager Authoring Services.
OFC335 Microsoft Office Word 2007 XML Programmability: True Data/View Separation and Rich Eventing for Custom XML Tristan Davis Program Manager Microsoft.
OFC 308 Advanced Word XML: The WordML Schema and Bringing Everything Together Brian Jones Program Manager Authoring Services.
SharePoint and OpenXML Tools and Object Models for Server-Side Office Development Ron Dunn Information Worker Technology Specialist.
James Akrigg Microsoft Ltd Integrating InfoPath Forms Into Workflow Solutions And Business Processes.
Open XML Formats Jessica Gruber Consultant Microsoft Corporation.
OFC291 Microsoft® Office Word XML (part 1 of 3): Introduction Martin Sawicki Lead Program Manager.
Office Open XML Developer Workshop Custom XML Integrating data and documents.
Office Open XML Developer Workshop Office Open XML Architecture A developer’s introduction to the file formats.
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
D301 Building solutions with the Project Data Service David Solomon InfoPath ADC Microsoft Corporation.
Rich Platform Services Manageability User Experience.
Office 2007 for Developers Darryl Burling Developer Evangelist Microsoft New Zealand Blog:
Open XML Formats Fabio Santini.NET Developer Evangelist Microsoft Italy.
Olaf Feldkamp Developer Platform Advisor Microsoft Switzerland blogs.msdn.com/swiss_dpe_team.
Extending the 2007 Microsoft Office System User Interface Mike Taulty Developer & Platform Group, Microsoft Ltd
Microsoft Visual Studio 2005 Tools for the Office System: Building Office Solutions Using Visual Studio 2005 Tools for Office Andrew Coates Developer Evangelist.
The Office Development Platform & Visual Studio Tools for Office Mike Hernandez Product Manager Microsoft Corporation Steven Goulet Group Program Manager.
Microsoft Confidential 2007 Microsoft Office System Technical Overview - Client Michael McClary Microsoft Confidential.
The 2007 Microsoft Office System Servers Enterprise Content Management, Workflow and Forms Martin Parry Developer and Platform Group, Microsoft Ltd
Microsoft Office System UK Developers Conference Radisson Edwardian, Heathrow 29 th & 30 th June 2005.
Workflow in Microsoft Office SharePoint Server Jessica Gruber Consultant Microsoft Corporation.
SharePoint 2007 Business Intelligence October 23 th, 2008 Neil Iversen - Inetium.
Open XML Developer Workshop Office Open XML Architecture A developer’s introduction to the file formats.
Microsoft Office and XML – Making the data work for YOU! Mark Johnston Developer & Platform Group, Microsoft Ltd
SharePoint 2007 Business Intelligence
Integrating SharePoint 2010 with Office 2010
5/20/2018 2:53 AM © 2006 Microsoft Corporation. All rights reserved.
Office Open XML Formats: Enabling Solutions
Business Connectivity Services in SharePoint 2010 and Office 2010
Visual Studio Tools for Office 2005
2007 Office System Integration
Managed Code, Data and Microsoft Office
Microsoft Dynamics.
Office Power Hour New developer APIs and features for Apps for Office
Office as a development platform with Visual Studio 2008
Visual Studio 2005 Tools For Office: Creating A Multi-tier Application
Visual Studio 2010 SharePoint Development Tools Overview
Windows Forms in Visual Studio 2005: An in-depth look at key features
SharePoint 2007 Developer Overview Collaboration BI Features
Windows Forms in Visual Studio 2005: An Overview
Developer & Platform Group, Microsoft Ltd
MS Confidential : SharePoint 2010 Developer Workshop (Beta1)
Contexualized Data In Document Authoring
Presentation transcript:

New Capabilities with the Open XML File Format Visual Studio Tools for Office Mike Ormond Developer and Platform Group, Microsoft Ltd

Agenda Introduction to the file formats Solution development The document information panel Structured solutions with Word Dynamic documents Server document generation Visual Studio Tools for Office

OPEN XML FILE FORMATS Introduction to the new Open XML File Formats (OR: What does this thing look like anyway?)

Evolution Of File Formats Office 2000 Early Innovation XML document properties Office 97 Existing binary file formats designed in 1994, launched in Office 97 Office XP First XML Format Spreadsheet XML Office 2003 Breakthrough XML Support WordML, SpreadsheetML Custom-defined schema Office 2007 New XML Formats XML file format default XML PowerPoint format “Wave 12”

The Role Of XML With Documents ScenarioExample Document Assembly Server-based or user-assisted construction of documents from archived content or database content Create sales reports from financial and forecast data stored in a CRM system Content Reuse Much easier to move content between documents, including different document types Apply content stored in Word documents to Web pages quickly and efficiently Content Tagging Add domain-specific metadata to document content to enable custom solutions Tag presentations using a specific taxonomy to improve knowledge management efficiency Document Interrogation Query document repositories based on custom data, content types or document metadata Search for all documents containing a specific company name or sales contact Document Sanitization Remove unwanted content like comments or embedded code from your document when appropriate Remove all tracked changes and comments from a Word document before it is published

Open XML File Formats Default file format More efficient storage Program against full document contents Backward compatibility & legacy support Easy document assembly, conversion & integration Submitted to ECMA for standardization

Open XML Formats Architecture User view: single Office “file” Questionnaire. docx Developer view: modular file Document Parts Most parts are XML Each XML part is a discreet, compressed component Can add, extract and modify individual parts without using Office programs Corruption or absence of any part would not prohibit the file from being opened

Open XML File Formats

SOLUTION DEVELOPMENT Solution development with the new Open XML File Formats (OR: Great. Now do I make use of this from code?)

Tools for Accessing Data In Office Open XML files XML Editing Notepad? System.XML makes this easier ZIP Manipulation Compressed Folders in Windows? Third-Party Zip Libraries Microsoft’s Packaging API’s Office Open XML Resource Kit Code Snippets - Beta 2 C# and VB.NET Validation Library Parses a file and reports on schema, relationship errors and warnings Serialization/Deserialization Library Flattens package into a single file for ease of development in simple construction scenarios

System.IO.Packaging Part of.NET Fx 3.0 Allows you to Create / Open packages Create and delete parts and relationships Read and write part streams Iterate through collections of parts and relationships PackagePackagePartCollection └ PackagePart └ PackagePartPackageRelationshipCollection └ PackageRelationship └ PackageRelationshipPackUriHelper

System.IO.Packaging.Package Package class provides methods to create, enumerate and delete the following entities Package Package Relationships PackagePropertiesParts Core Properties Common Package Parts Thumbnail Digital Signatures officeDocument XML Part Specific Format Parts Etc… Part Rels XML Part Part Rels

System.IO.Packaging.Relationship Relationships tie the parts together Required to find parts (part names are not guaranteed) Iterate through RelationshipCollection by Type or ID Relationship Properties IDPackageRelationshipTypeSourceUriTargetModeTargetUri Package Relationships Core Properties Common Package Parts Thumbnail Digital Signatures officeDocument XML Part Specific Format Parts Etc… Part Rels XML Part Part Rels officeDocument XML Part

System.IO.Packaging.PackagePart Parts are the objects of data within the Package PackagePart provides support to create, enumerate and delete part relationships Get Part data as Stream PackagePart Properties: CompressionOptionContentTypePackageUri Package Relationships Core Properties Common Package Parts Thumbnail Digital Signatures officeDocument XML Part Specific Format Parts Etc… Part Rels XML Part Part Rels - The Quick Brown Fox jumped over the river. … XML Part - The Cow jumped over the moon. …

System.IO.Packaging.PackURIHelper Helper class to aid working with URIs URIs required to GetParts Create or Get URIs for PackagesParts Relationship parts Resolve relative URIs for parts from source to target part

Document Interrogation Scenarios When you need meta-data about Office files on a server Building reports from data in files Workflow and Content Management scenarios Validate compliance

Document Assembly Scenarios Useful when documents need to be generated from structured data Auto generate reports in Excel from data in database Create documents for users from form data Repurpose existing data (slide libraries) Recommendation: Start from a template

Document Sanitization Scenarios Security Remove active content (VBA, ActiveX) Privacy Remove comments, revisions, hidden text Remove or alter document properties Legal Insert copyrights, watermarks, images Run as part of Workflows, publishing, compliance scenarios

Solution Development

THE DOCUMENT INFORMATION PANEL Creating smart forms and dynamic documents (OR: How to leverage the power of InfoPath in your documents. You do know what InfoPath is don’t you?)

Document Information Panel Customisable form displayed in the client application Allows users to enter document properties (metadata) while working on the document SharePoint properties appear as metadata in the DIP

Custom Information Panel The Document Information Panel uses InfoPath technology This technology can be used to create business logic around any custom XML data All the power of InfoPath in Word Data connections, declarative rules engine, etc.

Document Info Panel

EXERCISING CONTROL Structured solution authoring with Word 2007 – Rich UI and robust editing behaviour. (OR: How to author multi-use and dynamic documents to make everyone’s life easier)

The Role Of XML Reference and custom-defined schemas Custom-defined Schemas Data-oriented (e.g., Price, Invoice) Represents the business information stored in the document Enable System Integration XML Reference Schemas Display-oriented (e.g. Bold, Italics, Tables, Paragraphs, Styles) Open Document Format Enable Archival & File Formats Interoperability

The Role Of XML Reference and custom-defined schemas XML Reference Schemas Display-oriented (e.g. Bold, Italics, Tables, Paragraphs, Styles) Open Document Format Enable Archival & File Formats Interoperability <w:p> John Doe John Doe Health Agency Health Agency </w:p>

3/24/2004 Health Agency % … Custom-defined Schemas Data-oriented (e.g., Price, Invoice) Represents the business information stored in the document Enable System Integration The Role Of XML Reference and custom-defined schemas

Content Controls (Word) Makes structured documents more robust & much less Word specific code needed Content restrictions, grouping & locking Code can be used for business logic! End user friendly and layout independent exposure of structured content No XML schema required Evolution of customer-defined XML with custom XML mapping capabilities (more detail in CD 305)

Solutions And Building Blocks Select and reuse any selection of WordprocessingML Building blocks and content controls Two steps to a document assembly solution Write 18 lines of UI code Make a few selections and clicks or attach a building block part

Content Controls

MAKING DOCUMENTS WORK FOR YOU Content Controls + Custom XML Store = Rich, Robust, Dynamic documents

Office XML Data Store Customer-defined XML (incl. WSS/Office properties) stored separately from WordprocessingML as a part in Open XML format Any XML can be stored (with or without XML schema) XML data is available as an editable tree (using familiar DOM) within Word Can be populated on a server using WinFX or a client using Word OM

XML Mapping Link content controls to nodes in the XML data store Provides for true data/view separation model in Word Mappings are created using standard XPath expressions Mappings can be set up to ‘auto-attach’ to incoming data Out of the box support for mapping to Office properties

Health Agency 100 … Content Controls + Custom XML

Dynamic Documents

WHAT ABOUT THE SERVER Generating Office Documents on the Server

Putting it all together Start with a Template Document Assembly System.IO.Packaging Delete / Create Parts & Relationships Document Manipulation System.IO.Packaging Word -> Content Controls + Custom XML Excel -> System.Xml + SpreadsheetML PowerPoint -> System.Xml + PresentationML

Document Assembly On the Server

VISUAL STUDIO TOOLS FOR OFFICE

Visual Studio Tools For Office Tool for building managed applications targeting Office 2003 / Office 2007 The managed code API for Office Generates a lot of the “plumbing” code Visual designers Separate date & presentation Robust run-time Flavours VSTO 2005, VSTO 2005 SE, VSTO V3 (Orcas)...

VSTO Editions VSTO Version Office 2003Office 2007 Additional Information docappdocapp 2003 Excel InfoPath Word Visual Studio.NET Excel InfoPath Word Outlook Data Caching Server-Side Programming Data Caching Server-Side Programming Integrated Designer Smart Tags ActionsPane Smart Tags ActionsPane 2005 SE Excel Outlook PowerP oint Visio Word InfoPath Excel InfoPath Outlook PowerP oint Visio Word Rbbon Customization Custom TaskPanes Outlook Form Regions Compatibility "V3" Excel Word Excel InfoPath Word All Ribbon Customization Custom TaskPanes Outlook Form Regions Ribbon Customization Custom TaskPanes Outlook Form Regions New Security Model ClickOnce Deployment AppDomain Isolation Runtime Standardization From Wouter van Vugt (

Visual Studio Tools for Office

Additional Resources Open XML File Formats General VSTO / Programmability

Additional Information UK MSDN Events Post events page including slide decks Upcoming events UK MSDN Site & Flash Newsletter Local news, events, nuggets & webcasts Register to receive the bi-weekly MSDN Flash by

© 2006 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.