<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>word-2007 &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/word-2007/</link>
	<description>Feed of posts on WordPress.com tagged "word-2007"</description>
	<pubDate>Mon, 28 Dec 2009 13:48:11 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Microsoft loses its appeal in $200-million-plus Custom XML patent infringement case]]></title>
<link>http://magidabdelhalim.wordpress.com/2009/12/24/microsoft-loses-its-appeal-in-200-million-plus-custom-xml-patent-infringement-case/</link>
<pubDate>Thu, 24 Dec 2009 11:17:33 +0000</pubDate>
<dc:creator>magidabdelhalim</dc:creator>
<guid>http://magidabdelhalim.wordpress.com/2009/12/24/microsoft-loses-its-appeal-in-200-million-plus-custom-xml-patent-infringement-case/</guid>
<description><![CDATA[Dec. 22 (Bloomberg) &#8212; Microsoft Corp., the world’s biggest software maker, is preparing to alt]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Dec. 22 (Bloomberg) &#8212; <a href="http://www.bloomberg.com/apps/quote?ticker=MSFT%3AUS">Microsoft Corp.,</a> the world’s biggest software maker, is preparing to alter its popular Word software after it lost its appeal of a $200 million patent-infringement verdict won by a Canadian firm. </p>
<p>The company, based in Redmond, Washington, was given until Jan. 11 to make the change or stop sales, in a decision released today by the US Court of Appeals for the Federal Circuit in Washington. Word is part of Microsoft’s Office software, used by more than 500 million people. </p>
<p>The court upheld a verdict that has since grown to $290 million, won by closely held <a href="http://www.i4i.com/">I4i LP</a> of Toronto. The dispute is over an invention related to customizing extensible markup language, or XML, a way of encoding data to exchange information among programs. Microsoft has called it an “obscure functionality.” </p>
<p>Microsoft said it has been working on making the change since the trial judge first ordered a halt in August and has “put the wheels in motion to remove this little-used feature from our products.” </p>
<p>Copies of Word 2007 and Office 2007 with the feature removed will be available for US. sale by Jan. 11, and “beta versions of Microsoft Word 2010 and Microsoft Office 2010, which are available now for downloading, don’t contain the technology covered by the injunction,” said <a href="http://search.bloomberg.com/search?q=Kevin+Kutz&#38;site=wnews&#38;client=wnews&#38;proxystylesheet=wnews&#38;output=xml_no_dtd&#38;ie=UTF-8&#38;oe=UTF-8&#38;filter=p&#38;getfields=wnnis&#38;sort=date:D:S:d1">Kevin Kutz</a>, a company spokesman. </p>
<p>Customer Testing </p>
<p>Microsoft is testing Office 2010 with customers and will release the completed version in the first half of next year. The unit that sells Office is Microsoft’s biggest, with $18.9 billion in<a href="http://www.bloomberg.com/apps/quote?ticker=MSFT%3AUS"> sales</a> in the year ended June 30. </p>
<p>Microsoft can continue to provide technical support to current Word users. It can’t instruct new users who buy Word after the deadline on how to use the custom XML editor or sell copies of Word with the feature, the court said. </p>
<p>The software maker said it may ask the Federal Circuit to reconsider the decision or appeal to the US. Supreme Court. </p>
<p>The Federal Circuit isn’t likely to grant such a request, and “there’s no issue really sexy or different for the Supreme Court to address either,” said <a href="http://www.oblon.com/people/index.php?id=34">James Kulbaski</a>, a patent lawyer with Oblon Spivak in Alexandria, Virginia, who isn’t part of the case. </p>
<p>“This was a small company that appeared to be doing reasonably well, and Microsoft’s product essentially eliminated that part of the business,” Kulbaski said. “I4i could not compete with Microsoft Word incorporating their feature. </p>
<p>Licensing Held Unlikely </p>
<p>Based on the company’s statement today, it’s doubtful that Microsoft will try to reach a licensing deal with I4i, said <a href="http://search.bloomberg.com/search?q=Matt%0ARosoff&#38;site=wnews&#38;client=wnews&#38;proxystylesheet=wnews&#38;output=xml_no_dtd&#38;ie=UTF-8&#38;oe=UTF-8&#38;filter=p&#38;getfields=wnnis&#38;sort=date:D:S:d1">Matt Rosoff</a>, an analyst with Directions on Microsoft, based in Kirkland, Washington. </p>
<p>“There may be conversations going on now, but the safest thing is to not include it in 2010,” said Rosoff, whose company is a research firm focused on Microsoft’s technology and business strategy. “They have to look at this feature, see how important it is, who’s using it, and decide how much they’re willing to pay for it.” </p>
<p>I4i’s business was based on preserving its patent rights, and “Microsoft is not entitled to continue infringing simply because it successfully exploited its infringement,” the three- judge panel said. </p>
<p>“A small company was practicing its patent, only to suffer a loss of market share, brand recognition, and customer goodwill as the result of the defendant’s infringing acts,” the court said. “The district court found that Microsoft captured 80 percent of the custom XML market with its infringing Word products, forcing I4i to change its business strategy.” </p>
<p>Small Inventors’ Rights </p>
<p>The decision is “an important step in protecting the property rights of small inventors,” Michael Vulpe, I4i’s co- founder, said in an e-mail. Company Chairman <a href="http://search.bloomberg.com/search?q=Loudon+Owen&#38;site=wnews&#38;client=wnews&#38;proxystylesheet=wnews&#38;output=xml_no_dtd&#38;ie=UTF-8&#38;oe=UTF-8&#38;filter=p&#38;getfields=wnnis&#38;sort=date:D:S:d1">Loudon Owen</a> called it “both a vindication for I4i and a war cry for talented inventors whose patents are infringed.” </p>
<p>“The same guts and integrity that are needed to invent and go against the herd, are at the heart of success in patent litigation against a behemoth like Microsoft,” Owen said in a statement. </p>
<p>There was “sufficient evidence” for the jury to reach both its verdict and damage award, the court said. It also upheld the trial judge’s decision to add $40 million to the original $200 million verdict for intentional infringement. The remaining $50 million is for post-verdict damages and interest. </p>
<p>Design Deadline </p>
<p>Microsoft claimed the product was a small part of its Word package and the damages are inordinately high. The company also argued in court papers that it was under an unrealistic deadline to “redesign its flagship Word software to remove an obscure functionality” or be “compelled to stop distributing Word and the popular Office software suite.” </p>
<p>The appeals court said the scope of the order was narrow in that it wouldn’t affect existing customers. It did say Microsoft should have been given more time to implement any change to Word, based on a declaration from a Microsoft employee that it would take at least five months to do so. The judge originally allowed just 60 days. </p>
<p>XML is a common way of encoding data, and nothing in the order prevented Microsoft from continuing to offer that feature in Word, or for allowing customized XML when it’s used in plain text. The disputed feature is one used by large companies to add special data to Word files, such as information in forms submitted by customers. I4i’s patent was issued in 1998. </p>
<p>Customized XML is a key feature of the software and services sold by I4i, Owen has said. Customers including drug makers<a href="http://www.bloomberg.com/apps/quote?ticker=MRK%3AUS"> Merck &#38; Co.</a> and <a href="http://www.bloomberg.com/apps/quote?ticker=BAY%3AGR">Bayer AG</a> use I4i’s software to make sure that people get the correct and most up-to-date information on the labels of their medicine. </p>
<p>The case is I4i LP v. Microsoft Corp., 2009-1504, US. Court of Appeals for the Federal Circuit (Washington). The lower-court case is I4i LP v. Microsoft Corp., 07-cv-113, US. District Court, Eastern District of Texas (Tyler). </p>
<p>To contact the reporters on this story: <a href="http://search.bloomberg.com/search?q=Susan+Decker&#38;site=wnews&#38;client=wnews&#38;proxystylesheet=wnews&#38;output=xml_no_dtd&#38;ie=UTF-8&#38;oe=UTF-8&#38;filter=p&#38;getfields=wnnis&#38;sort=date:D:S:d1">Susan Decker</a> in Washington at <a href="mailto:sdecker1@bloomberg.net">sdecker1@bloomberg.net</a>; <a href="http://search.bloomberg.com/search?q=William+McQuillen&#38;site=wnews&#38;client=wnews&#38;proxystylesheet=wnews&#38;output=xml_no_dtd&#38;ie=UTF-8&#38;oe=UTF-8&#38;filter=p&#38;getfields=wnnis&#38;sort=date:D:S:d1">William McQuillen</a> in Washington at <a href="mailto:bmcquillen@bloomberg.net">bmcquillen@bloomberg.net</a>. </p>
<p><font size="1">By Susan Decker and William McQuillen</font></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Can you still use custom XML fragments in Word 2007?]]></title>
<link>http://kumarpandya.wordpress.com/2009/12/23/can-you-still-use-custom-xml-fragments-in-word-2007/</link>
<pubDate>Wed, 23 Dec 2009 19:03:17 +0000</pubDate>
<dc:creator>kumarpandya</dc:creator>
<guid>http://kumarpandya.wordpress.com/2009/12/23/can-you-still-use-custom-xml-fragments-in-word-2007/</guid>
<description><![CDATA[In case you are a developer that program against Word 2007 documents, this news may be of importance]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>In case you are a developer that program against Word 2007 documents, this news may be of importance to you:</p>
<p>http://www.informationweek.com/news/windows/microsoft_news/showArticle.jhtml?articleID=222100033&#38;subSection=News</p>
<p>I have posted a<a class="wp-caption" href="http://openxmldeveloper.org/forums/7958/ShowThread.aspx#7958" target="_blank">question in OpenXML forum</a>to get some direction from Microsoft and community around this.  Look forward to hearing on this &#8211; how it affects you and what you plan to do about it.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Microsoft At A (Temporary) Loss For Words]]></title>
<link>http://blogs.howstuffworks.com/2009/12/23/microsoft-at-a-temporary-loss-for-words/</link>
<pubDate>Wed, 23 Dec 2009 15:39:27 +0000</pubDate>
<dc:creator>Jonathan Strickland</dc:creator>
<guid>http://blogs.howstuffworks.com/2009/12/23/microsoft-at-a-temporary-loss-for-words/</guid>
<description><![CDATA[I imagine this is how Microsoft CEO Steve Ballmer reacted when he heard about losing the legal appea]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><div id="attachment_25006" class="wp-caption alignright" style="width: 370px"><a href="http://howstuffworks.wordpress.com/files/2009/12/ballmer-1.jpg"><img class="size-full wp-image-25006" title="ballmer-1" src="http://howstuffworks.wordpress.com/files/2009/12/ballmer-1.jpg" alt="" width="360" height="240" /></a><p class="wp-caption-text">I imagine this is how Microsoft CEO Steve Ballmer reacted when he heard about losing the legal appeal (Courtesy AP Photo/Lee Jin-Man)</p></div>
<p>I almost feel sorry for Microsoft. Recently, the company has had to contend with lawsuits (and threats of lawsuits) from several companies. Microsoft recently admitted that developers for the Chinese microblogging site Juku, which Microsoft owns, stole code from Plurk. Plurk executives are considering what steps to take next. On top of that, a small Missouri firm called Bing! Information Design has filed a trademark infringement lawsuit against Microsoft. The company claims to have used the Bing name since 2000 &#8212; years before Microsoft began work on its latest search engine technology.</p>
<p>Now <a href="http://www.reuters.com/article/idUSTRE5BL3FV20091223?type=technologyNews%3FfeedType%3DRSS&#38;feedName=technologyNews&#38;utm_source=feedburner&#38;utm_medium=feed&#38;utm_campaign=Feed:+reuters/technologyNews+(News+/+US+/+Technology)&#38;utm_content=Google+Feedfetcher" target="_blank">Reuters reports</a> that Microsoft has lost a legal battle with a company called i4i. I blogged about this dispute <a href="http://blogs.howstuffworks.com/2009/08/13/i4i-says-word-to-microsofts-mother/">back in August</a>. The crux of the matter is a patent infringement issue. The Toronto-based company i4i claimed that Microsoft violated a patent when it used a specific implementation of eXtensible Markup Language (XML) in its Word product. Word is one of the most popular word processing programs on the market today and part of Microsoft&#8217;s flagship Microsoft Office suite. In the initial case, the judge ruled in favor of i4i and placed an injunction on Microsoft, forbidding the company from selling copies of Word containing the XML implementation. Microsoft filed an appeal and while the court system took it under consideration the injunction was put on hold.</p>
<p>Microsoft lost the appeal. Company executives now say that Microsoft will remove all instances of the XML implementation in future copies of Word 2007 and Office 2007. They&#8217;d better do it quickly &#8212; the judge ruled that after January 11, 2010, Microsoft wouldn&#8217;t be allowed to sell any copies of Word containing the XML implementation. Microsoft says that later versions of the software don&#8217;t have the XML feature. The company will also have to pay more than $290 million in damages to i4i.</p>
<p>The nature of the feature itself is rather technical and has to do with separating the textual content of a document and the markup language that describes that text.  I&#8217;m not sure I grasp all the details or exactly how Microsoft violated the patent.   I wonder if the courts have a better understanding of XML than I do. I suspect not.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Court's patent ruling won't keep Microsoft Word off the shelves]]></title>
<link>http://virginonmedia.wordpress.com/2009/12/23/courts-patent-ruling-wont-keep-microsoft-word-off-the-shelves/</link>
<pubDate>Wed, 23 Dec 2009 13:02:28 +0000</pubDate>
<dc:creator>stevevirgin</dc:creator>
<guid>http://virginonmedia.wordpress.com/2009/12/23/courts-patent-ruling-wont-keep-microsoft-word-off-the-shelves/</guid>
<description><![CDATA[Alas and alack, this ruling doesn&#8217;t spell doom for Microsoft Word Pay no attention to headline]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style="color:#000000;font-family:Arial,Helvetica;"><strong>Alas and alack, this ruling doesn&#8217;t spell doom for Microsoft Word</strong><br />
</span></p>
<p>Pay no attention to headlines predicting that Microsoft Word will be banished from store shelves on Jan. 11 because of a patent ruling. The widely used word processor isn&#8217;t going anywhere; nor does Tuesday&#8217;s ruling by the D.C.-based U.S. Court of Appeals for the Federal Circuit represent any sort of earth-shattering development in patent law. Tuesday&#8217;s ruling upholds a judge&#8217;s injunction issued after a district court jury found that a feature in Word 2007, and the Office 2007 suite that includes Word, infringed a patent held by i4i, a Toronto software developer. The feature in question governs how programs deal with a specialized data format called XML, short for extensible markup language. It&#8217;s arguable, as Computerworld writer Steven J. Vaughan-Nichols writes, that i4i never should have received this patent in the first place. But there also seems to be solid evidence that Microsoft knew about i4i&#8217;s work before adding these features to Word. Either way, though, Microsoft is already moving to get out of the box the court&#8217;s ruling put it in. In a statement issued earlier Tuesday, the company said it &#8220;had put the wheels in motion to remove this little-used feature&#8221; from Word before the Jan. 11 deadline. The statement added that Microsoft&#8217;s upcoming Word 2010 and Office 2010 &#8220;do not contain the technology covered by the injunction.&#8221; So here&#8217;s the upshot: Microsoft spends some time and money removing a feature most people don&#8217;t use but doesn&#8217;t have to stop selling its product, i4i gets a moment in the headlines and a decent payday, patent lawyers rack up billable hours, and most consumers never notice the difference.</p>
<p><a href="http://www.washingtonpost.com/wp-dyn/content/article/2009/12/22/AR2009122203107.html?hpid=sec-tech">http://www.washingtonpost.com/wp-dyn/content/article/2009/12/22/AR2009122203107.html?hpid=sec-tech</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Turn off Final Markup view as default in Microsoft Word 2007]]></title>
<link>http://localgovernmentsharepoint.wordpress.com/2009/12/22/turn-off-final-markup-view-as-default-in-microsoft-word-2007/</link>
<pubDate>Tue, 22 Dec 2009 21:13:21 +0000</pubDate>
<dc:creator>Rob Ashcroft</dc:creator>
<guid>http://localgovernmentsharepoint.wordpress.com/2009/12/22/turn-off-final-markup-view-as-default-in-microsoft-word-2007/</guid>
<description><![CDATA[In Office 2007 the thing that really bugged me was that a word document would open up showing the ma]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>In Office 2007 the thing that really bugged me was that a word document would open up showing the markup text and symbols. You can change this setting by going to the &#8216;Review&#8217; tab on the Ribbon and selecting how you want the document to display under &#8216;Tracking&#8217;.<br />
 <br />
If you just want to see the Final version of a Word 2007 document without the mark-up then do the following:<br />
 <br />
Office Button &#62; Word Options &#62; Trust Center &#62; Trust Center Settings &#62;<br />
Privacy Options &#62; Document specific settings<br />
 <br />
Deselect &#8216;Make hidden mark-up visible when opening or saving&#8217;.<br />
 <br />
When you next open up a word document you shouldn&#8217;t see all the markup.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[When you print a Word document that includes a background, the background is not printed]]></title>
<link>http://localgovernmentsharepoint.wordpress.com/2009/12/22/when-you-print-a-word-document-that-includes-a-background-the-background-is-not-printed/</link>
<pubDate>Tue, 22 Dec 2009 20:40:04 +0000</pubDate>
<dc:creator>Rob Ashcroft</dc:creator>
<guid>http://localgovernmentsharepoint.wordpress.com/2009/12/22/when-you-print-a-word-document-that-includes-a-background-the-background-is-not-printed/</guid>
<description><![CDATA[When you print a Word document that includes a background, the background is not printed   Solution ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>When you print a Word document that includes a background, the background is not printed<br />
 <br />
Solution<br />
 <br />
Word 2007</p>
<p>Click the Microsoft Office Button, and then click Word Options.<br />
On the Display menu, click to select the Print background colors and images check box under Printing Options, and then click OK.</p>
<p>Word 2003</p>
<p>To work around this issue in Word 2003 or when you use Word 2003 as the e-mail editor in Microsoft Office Outlook 2003, turn on the Background colors and images option. To do this, follow these steps:<br />
On the Tools menu, click Options, and then click the Print tab.<br />
Click to select the Background colors and images check box, and then click OK.</p>
<p>Word 2002</p>
<p>Method 1: Use the Printed Watermark feature<br />
To work around this issue in Word 2002, use the Printed Watermark feature. To do this, follow these steps:<br />
On the Format menu, point to Background, and then click Printed Watermark.</p>
<p>In the Printed Watermark dialog box, use one of the following methods:</p>
<p>To insert a picture watermark, follow these steps:<br />
Click Picture watermark.<br />
Click Select Picture.<br />
Click the picture that you want to use as a watermark, and then click Insert.<br />
Click to select the Washout check box if it is not already selected, and then click OK.<br />
Note The Washout feature adjusts the brightness and contrast on the image to make the image less visible behind the text.<br />
To insert a text watermark, follow these steps:<br />
Click Text watermark.<br />
In the Text box, type the text that you want to use as a watermark.<br />
Note You can also select the text that you want to use as a watermark by clicking the text in the Text list.<br />
Select the other options that you want to use with the text watermark, such as Font, Size, and Color, and then click OK.<br />
Method 2: Use Microsoft Internet Explorer<br />
To work around this issue when you use Word 2002 as the e-mail editor in Microsoft Outlook 2002, follow these steps:<br />
Open the e-mail message that contains the background that you want to print in Outlook 2002.<br />
On the File menu, click Save As.<br />
In the Save As dialog box, follow these steps:<br />
In the Save as type box, click Web Page (*.htm; *.html).<br />
In the File name box, type a new name for the message.<br />
In the Save in box, select the folder in which you want to save the HTML copy of the e-mail message.<br />
Click Save.<br />
Close the e-mail message in Word 2002.<br />
Start Internet Explorer.<br />
On the File menu, click Open.<br />
In the Open dialog box, click Browse.<br />
Locate and then click the HTML copy of the e-mail message that you saved in step 3, and then click Open.<br />
In the Open dialog box, click OK to open the HTML copy of the e-mail message in Internet Explorer.<br />
On the Tools menu, click Internet Options.<br />
Click the Advanced tab.<br />
In the Settings list, under Printing, click to select the Print background colors and images check box.<br />
Click OK to close the Internet Options dialog box.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Windows 7: Hung (Phantom) Instance Of Word 2007]]></title>
<link>http://windows7professional.wordpress.com/2009/12/19/windows-7-hung-phantom-instance-of-word-2007/</link>
<pubDate>Sun, 20 Dec 2009 03:06:40 +0000</pubDate>
<dc:creator>aguruge</dc:creator>
<guid>http://windows7professional.wordpress.com/2009/12/19/windows-7-hung-phantom-instance-of-word-2007/</guid>
<description><![CDATA[Basically I had an instance of Word 2007 that I could NOT close. [I didn't resort to firing up TASK ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style="color:#006699;">Basically I had an instance of Word 2007 that I could NOT close. [I didn't resort to firing up TASK MANAGER to cancel the application.]</span></p>
<p><span style="color:#006699;">Was distressing and discouraging. I had hoped that Windows 7 was more robust in this area of application &#8216;clean up.&#8217;</span></p>
<p><span style="color:#006699;">To be fair it was a <strong>Word 2007</strong> problem. But, Word got it&#8217;s knickers in a knot thanks to <strong>Adobe Acrobat Professional 9.2</strong>.</span></p>
<p><span style="color:#006699;">My father, Dr. Ananda Guruge, like I, is an author &#8212; a much more prolific and successful one at that. He is working on his 80th (we think) book &#8230; a fictional trilogy. He had a PDF sent to him by his publisher in Sri Lanka. It was 689 pages long. He wanted it in Word. [Now 81 we wrote it in long hand and his publisher had it data entered.]</span></p>
<p><span style="color:#006699;">I opened it up Acrobat 9.2 and saved it as a Word (97-2003 compatible) document. Opened it up. Opened fine for me. Reformatted it a bit and saved it. Opened it again and all was fine.</span></p>
<p><span style="color:#006699;">Emailed it to my father. He calls back to say that he only got the first 286 pages! Checked the document again on my Windows 7 machine using Word 2007. No problem.</span></p>
<p><span style="color:#006699;">So decided to try it on my XP machine using Word 2002 &#8230; since this would be closer to what my father had.</span></p>
<p><span style="color:#006699;">He was right. Doesn&#8217;t open all the pages. Plus it hangs Word 2002. Hhhmmmm.</span></p>
<p><span style="color:#006699;">Tried various tricks. Tried Adobe Acrobat 6 Professional. That hung.</span></p>
<p><span style="color:#006699;">Tried three of the PDF-to-Word conversion products on a trial basis. Not impressed. In the end used the online (meaning you give them PDF &#8230; they email Word back) <a href="http://www.pdftoword.com/" target="_blank">nitoPDF converter</a>. Wow. Very impressed. They converted and sent me back the 689 page document in minutes. Based on that I have no problem endorsing <strong>nitroPDF</strong>. Take a bow, nitoPDF. You saved my day. I had heard a lot about them. First time I have used them.</span></p>
<p><span style="color:#006699;">Well, though by now I was doing most of the PDF work on my XP system, I had opened various versions of the Adobe converted document using Word 2007. One version being RTF. Anyway, when I was trying to close my multiple instances of Word, the last one would not close.</span></p>
<p><span style="color:#006699;">Basically, Windows 7 though displaying the window was not recognizing it. Not good. Not happy. Rather than mess around, I restarted Windows 7. Here is the SAD sequel. I checked my <a href="http://windows7professional.wordpress.com/2009/11/09/windows-7-my-favorite-feature-at-least-for-now/" target="_blank">RELIABILITY HISTORY</a>. Nothing on it. Not happy.</span></p>
<p><span style="color:#006699;">Well, I am now wondering &#8230; when will we see Windows 7 SP1. I&#8217;ve heard that it might be available around June 2010.</span></p>
<p><span style="color:#006699;">Cheers.</span></p>
<p><span style="color:#006699;">Anura Guruge<br />
<a title="Anura Guruge Web site" href="http://www.guruge.com" target="_blank">www.guruge.com</a></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Windows 7: Dual-Monitor Cute But Handy Trick With Word 2007]]></title>
<link>http://windows7professional.wordpress.com/2009/12/17/windows-7-dual-monitor-cute-but-handy-trick-with-word-2007/</link>
<pubDate>Thu, 17 Dec 2009 20:25:59 +0000</pubDate>
<dc:creator>aguruge</dc:creator>
<guid>http://windows7professional.wordpress.com/2009/12/17/windows-7-dual-monitor-cute-but-handy-trick-with-word-2007/</guid>
<description><![CDATA[From what I can deduce, right now, Word 2007 allows you to scroll seamlessly across two documents, o]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style="color:#006699;">From what I can deduce, right now, <strong>Word 2007</strong> allows you to scroll seamlessly across two documents, one on each monitor, without having to &#8216;click/select&#8217; on either of the documents.</span></p>
<p><span style="color:#006699;">This is extremely handy. Thank YOU, Microsoft &#8212; though I do not think this was an explicit design feature. [I think it is an accidental, but providential, 'oversight in the code. I could, as ever, however, be wrong. Either way, it doesn't matter. Exploit it. Enjoy it.]</span></p>
<p><span style="color:#006699;">What does this mean. You can continually hop from one document to the other and scroll the document you are currently on WITHOUT having to make it the active Window.</span></p>
<p><span style="color:#006699;">Get it? It sounds more involved than what it is in practice.</span></p>
<p><span style="color:#006699;">OK. Let me give you a specific example. I am indexing my latest book. So I have one Word document called &#8216;Index&#8217;. Rather than using printed, hard copy I display the body of the book, i.e., the various chapters, as Word documents on my LEFT HAND side monitor.</span></p>
<p><span style="color:#006699;">So I read chapter content on the LEFT HAND side monitor while creating index entries on the RIGHT HAND side monitor.</span></p>
<p><span style="color:#006699;">I can mouse over from one document to the other and just start scrolling, as soon as I get to the other document, WITHOUT having to do a mouse CLICK on it &#8212; to activate it [i.e., to select it as the active document].</span></p>
<p><span style="color:#006699;">So my RIGHT HAND document, the index, REMAINS the active document even when I am scrolling the other document. So when I come back to the index I don&#8217;t have to re-select either. Just carry on typing. It really is COOL.</span></p>
<p><span style="color:#006699;">Thank you, Microsoft. This actually does translate into palpable productivity gain. Way to go.</span></p>
<p><span style="color:#006699;">I will keep you posted as I discover these &#8216;tricks.&#8217;</span></p>
<p><span style="color:#006699;">Cheers,</span></p>
<p><span style="color:#006699;">Anura Guruge,<br />
<a title="Anura Guruge Web site" href="http://www.guruge.com" target="_blank">www.guruge.com</a></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Save all open files in Word 2007 at the same time [Tip]]]></title>
<link>http://geekych1ck.wordpress.com/2009/12/08/save-all-open-files-in-word-2007-at-the-same-time-tip/</link>
<pubDate>Wed, 09 Dec 2009 00:51:21 +0000</pubDate>
<dc:creator>Geeky Chick</dc:creator>
<guid>http://geekych1ck.wordpress.com/2009/12/08/save-all-open-files-in-word-2007-at-the-same-time-tip/</guid>
<description><![CDATA[I have been trying out the Office 2010 beta. I like it but it&#8217;s not so different from Office 2]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><h3><span style="font-weight:normal;font-size:13px;"><a href="http://geekych1ck.wordpress.com/files/2009/12/word2007.jpg"><img class="alignleft size-full wp-image-333" title="Word 2007" src="http://geekych1ck.wordpress.com/files/2009/12/word2007.jpg" alt="" width="110" height="111" /></a>I have been trying out the Office 2010 beta. I like it but it&#8217;s not so different from Office 2007 that I&#8217;d consider forking out for an upgrade. </span></h3>
<h3><span style="font-weight:normal;font-size:13px;">So, instead I&#8217;m honing my 2007 skills as it looks like I&#8217;m going to need them for a while longer&#8230;</span></h3>
<h3><span style="font-weight:normal;font-size:13px;">Although it is not possible to save all open documents in Word 2007 the &#8216;old way&#8217; (ie by pressing Shift and selecting &#8216;Save all&#8217; from the menu bar), you can add that command to the Quick Access Toolbar. </span></h3>
<ol>
<li>Click the Office button (top left)</li>
<li>Click &#8216;Word Options&#8217; bottom right</li>
<li>Click Customize (about 6th option down in the left hand panel)</li>
<li>Click the small arrow next to the&#8217; Choose Commands From&#8217; box (it will probably be on its default of &#8216;Popular Commands&#8217;) and choose &#8216;Commands Not In Ribbon&#8217;</li>
<li>Scroll down and click on &#8216;Save All&#8217;</li>
<li>Click the Add button (in between the two main boxes, in the middle of the window)</li>
<li>Click the up arrow (far right)  if you want to change the position of the command on the Quick Access Toolbar</li>
<li>Click OK.</li>
</ol>
<h3><span style="font-weight:normal;font-size:13px;">And you&#8217;re done. Now just click the icon to Save All open documents.</span></h3>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Posting to a Drupal Blog using Word 2007]]></title>
<link>http://susanrb.wordpress.com/2009/12/07/posting-to-a-drupal-blog-using-word-2007/</link>
<pubDate>Tue, 08 Dec 2009 00:48:25 +0000</pubDate>
<dc:creator>susan</dc:creator>
<guid>http://susanrb.wordpress.com/2009/12/07/posting-to-a-drupal-blog-using-word-2007/</guid>
<description><![CDATA[One thing I have found with Drupal is that, since it is open source and many different people have c]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>One thing I have found with Drupal is that, since it is open source and many different people have contributed to the source code for the core and the modules, is that the documentation is often lacking. I discovered a blog today that contained a lot of helpful tutorials &#8211; John VanDyk&#8217;s <a href="http://www.sysarchitects.com" target="_blank">SysArchitects</a> blog. One post in particular I found useful:</p>
<p><a href="http://www.sysarchitects.com/node/64" target="_blank">Using Word 2007 Blog functionality to post to Drupal via the MetaWeblog API.</a></p>
<p>This particular posting will make it very easy for the Pastor to post updates to the <a href="http://southbaybiblefellowship.org" target="_blank">site</a>, since he does have Word 2007 installed. We don&#8217;t want difficulty with dealing with the software to discourage interactivity.</p>
<p>This would be very useful to any library that chose to utilize Drupal. This is not limited to blogs &#8211; you can allow an authorized person to post any type of content using Word 2007. I personally feel very comfortable posting using raw HTML &#8211; however, not every librarian feels that way and might prefer to work in a platform that he or she is already comfortable. Microsoft Word fits the bill.</p>
<p>Note: the <a href="http://drupal.org/node/295" target="_blank">Blog API</a> in the optional core must be enabled.</p>
<p>Troubleshooting problems: <a href="http://office.microsoft.com/en-us/word/HA101640211033.aspx?ver=12&#38;app=winword.exe" target="_blank">Microsoft Website</a></p>
<p><a href="http://southbaybiblefellowship.org/susblog" target="_blank">Susan&#8217;s Post to the SBBF Drupal blog using Word 2007</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[How to Change the Page Numbering Format and  Sequence in a Word 2007 Document]]></title>
<link>http://karathecomputertutor.wordpress.com/2009/12/07/how-to-change-the-page-numbering-format-and-sequence-in-a-word-2007-document/</link>
<pubDate>Mon, 07 Dec 2009 18:15:53 +0000</pubDate>
<dc:creator>Kara the Computer Tutor</dc:creator>
<guid>http://karathecomputertutor.wordpress.com/2009/12/07/how-to-change-the-page-numbering-format-and-sequence-in-a-word-2007-document/</guid>
<description><![CDATA[Let&#8217;s say you&#8217;re writing a book or a long document and want to number the pages. But you]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style="color:#000000;">Let&#8217;s say you&#8217;re writing a book or a long document and want to number the pages. But you don&#8217;t want the first page to have a number on it. You also want to start the numbering at 1 again partway through the document. Perhaps you have an introduction that should have Roman numerals for page numbers. Well, here&#8217;s how to change the page numbering for different parts of a document:</span></p>
<p><span style="color:#000000;">First you need to separate the document into sections. You&#8217;ll need to start a different section every time you either want to change the numbering sequence or number style. To insert a section break:</span></p>
<ol>
<li><span style="color:#008000;">Scroll down and place your cursor below where you want the first section to end and the second section to begin. In other words, where you want the page numbering to change.</span></li>
<li><span style="color:#008000;">Click on the Page Layout tab on the Ribbon at the top of your screen.</span></li>
<li><span style="color:#008000;">Click on the Breaks button in the Page Setup group.</span></li>
<li><span style="color:#008000;">Click on &#8220;Next Page&#8221; in the menu that pops up. This will create a new section and place the second on a new page. If you don&#8217;t want the section to start on a new page, choose &#8220;Continuous&#8221; instead.</span></li>
</ol>
<p><span style="color:#000000;">Next we have to format the page numbers for the first section. Let&#8217;s say, just for the sake of an example, that you want the page numbers in this section to be written in Roman numerals:</span></p>
<ol>
<li><span style="color:#008000;">Click on the Insert tab on the Ribbon.</span></li>
<li><span style="color:#008000;">Click on the Footer button in the Header &#38; Footer section.</span></li>
<li><span style="color:#008000;">Click on &#8220;Edit Footer&#8221; at the bottom of the menu that pops up.</span></li>
<li><span style="color:#008000;">Now you&#8217;re in the Header and Footer view of the document.  If you don&#8217;t want the first page to have a page number on it, make sure &#8220;Different First Page&#8221; in the Options group is checked. Otherwise uncheck it.</span></li>
<li><span style="color:#008000;">Click on the Page Number button in the Header &#38; Footer section on the left-hand side of the Ribbon.</span></li>
<li><span style="color:#008000;">Click on &#8220;Format Page Numbers.&#8221;</span></li>
<li><span style="color:#008000;">Click in the Number Format dropdown box and  choose a Roman numerals style, either upper or lowercase.</span></li>
<li><span style="color:#008000;">Click OK.</span></li>
</ol>
<p><span style="color:#000000;">Let&#8217;s insert the page numbers now:</span></p>
<ol>
<li><span style="color:#008000;">Click inside the footer on the second page of the document if you don&#8217;t want the first page to have a page number.</span></li>
<li><span style="color:#008000;">Now let&#8217;s say in our example that you&#8217;d like the page numbers to appear in the lower right-hand corner of the page. Click on the Page Number button in the Header &#38; Footer group again.</span></li>
<li><span style="color:#008000;">Click on &#8220;Bottom of Page.&#8221;</span></li>
<li><span style="color:#008000;">Click on the &#8220;Plain Number 3&#8243; choice. Roman numeral-style page numbers should show up on all your pages except for the first one if you didn&#8217;t want them to. Don&#8217;t worry about the page numbers in the sec0nd section yet if they appear and they&#8217;re all in Roman numerals. We&#8217;re going to fix that.</span></li>
</ol>
<p><span style="color:#000000;">Next let&#8217;s say you want to use Arabic numerals for either the rest of your document. You also want to start the numbering over at 1. OK, let&#8217;s do it:</span></p>
<ol>
<li><span style="color:#008000;">Place your cursor in the footer on the first page of Section 2. If for some reason you can&#8217;t get the cursor to click in it, click in another header and footer and then try again. Sometimes things get locked up for some reason.</span></li>
<li><span style="color:#008000;">The Link to Previous button in the Navigation section in the Ribbon might be activated and in orange. Click on it once to turn it off.</span></li>
<li><span style="color:#008000;">Next you can change the numbering format back to Arabic numerals. Again, to do this, click on Page Number, then Format Page Numbers.</span></li>
<li><span style="color:#008000;">Choose the Arabic numerals.</span></li>
<li><span style="color:#008000;">Now here&#8217;s the trick to starting at the number 1 again. Under &#8220;Page Numbering,&#8221; next to &#8220;Start At,&#8221; choose &#8220;1&#8243;.</span></li>
<li><span style="color:#008000;">Click OK.</span></li>
<li><span style="color:#008000;">Now click on Page Number on the Ribbon again, click on &#8220;Bottom of Page,&#8221;  and choose &#8220;Plain Number 3.&#8221;</span></li>
<li><span style="color:#008000;">Click on the Red X on the right-hand side of the Ribbon to get out of the Header &#38; Footer mode.</span></li>
</ol>
<p><span style="color:#000000;">You&#8217;re done! Can you believe it?</span></p>
<p><span style="color:#000000;">Now, I&#8217;ve tested these instructions a couple of times, and they worked for me. But that doesn&#8217;t mean they&#8217;re full-proof. If you get confused or think something isn&#8217;t clear, please either post a comment or email me at: kara@karathecomputertutor.com. I will help you for free if I can.</span></p>
<p><span style="color:#000000;">If you&#8217;d like to learn more about using Word or the other Microsoft Office programs, I&#8217;m also available to tutor remotely. It&#8217;s almost like being in person, and people really seem to like it. For more information, check out my </span><a href="http://www.karathecomputertutor.com" target="_blank"><span style="color:#0000ff;">website</span></a><span style="color:#000000;">.</span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[I need advice!]]></title>
<link>http://savanvleck.wordpress.com/2009/12/03/i-need-advice/</link>
<pubDate>Thu, 03 Dec 2009 14:09:17 +0000</pubDate>
<dc:creator>savanvleck</dc:creator>
<guid>http://savanvleck.wordpress.com/2009/12/03/i-need-advice/</guid>
<description><![CDATA[Okay, all you lurkers out there. It is time to leave a comment and give me some advice. My beloved G]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Okay, all you lurkers out there. It is time to leave a comment and give me some advice. My beloved Gateway CX200S touchpad bit the dust.  I loved that machine, as everything fit &#8220;me.&#8221; </p>
<p>I loved Windows XP, I loved the keypad, where everything was located, the feel of the keys (I type over 100 wpm).  I loved everything about it.  As an artist, I loved the ability to take the styllis and make corrections.</p>
<p>Fortunately, as my screen had been pink a lot lately, I have been backing up a lot.  Then, yesterday morning as it dimmed and brightened, I was able to do a last minute backup.  The swivel pins for the screen broke some time ago and I was using a jury-rig system in back of it.  I tried hooking up a separate screen to it but the window was too black to see if adjusting it in Control panel would make that work. </p>
<p>Now, I am not going to be able to pay to replace it.  I am hoping to get one under $600, closer to $400 (Hah!), and then later get a separate unit with a styllis to plug in.  I&#8217;m not having a lot of luck searching to see what they might need, or even to find an available separate styllis . </p>
<p>I have looked at TigerDirect for used computers and Googled reviews for laptops under $600.  Here are my questions and my requirements.</p>
<p>REQUIREMENTS:  I run the following programs and like to have most of them open at once:</p>
<ol>
<li>Word 2007</li>
<li>CoffeeCup HTML, FTP (free updates, since I purchased it, my actual disc is 2001)</li>
<li>PaintShop Pro 9</li>
<li>WordPerfect, I have this on because I used to use it so old discs have documents in WordPerfect, that I occasionally need.</li>
<li>Microsoft Money 2004</li>
<li>AND, I am on AOL, and they do not put out new discs very often.</li>
<li>I am on dialup but go to the library, and my Master Daughter&#8217;s for high speed.</li>
</ol>
<p>I rarely get anywhere near Hard Drive full.  I do not do gaming but do a lot of graphics and have a lot of photos on my hard drive.</p>
<p>So, does anyone have any recommendations.  Do I go to Tiger Direct and get something refurbished with Windows XP?  Or, how is the new Windows 7???  I am typing on a VISTA and it does not like installing a lot of software.  I hate the feel of the keyboard and the distance from the back.</p>
<p>It has been suggested that I go to Best Buy, etc and try them out and then go online, but I know they always seem to carry separate machines.  I also know that when Gaffer bought a computer at Best Buy he had &#8220;issues&#8221; with Gateway for repairs and he had three problems the first year.</p>
<p>I would really appreciate any advice, ideas or information.  Thank you. </p>
<p>P.S. Since I have been using other machines, my Categories is gone.  What&#8217;s with that?</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Research Paper Resources]]></title>
<link>http://bibliolobo.wordpress.com/2009/11/30/research-paper-resources/</link>
<pubDate>Mon, 30 Nov 2009 16:45:32 +0000</pubDate>
<dc:creator>blondelibrarian</dc:creator>
<guid>http://bibliolobo.wordpress.com/2009/11/30/research-paper-resources/</guid>
<description><![CDATA[Students, is that pesky research paper due soon? Maybe it&#8217;s due tomorrow and you haven&#8217;t]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Students, is that pesky research paper due soon?  Maybe it&#8217;s due tomorrow and you haven&#8217;t started yet?  If you are almost finished, do you know how to cite your sources?  Are you having trouble figuring out how to number your pages using Word 2007?  </p>
<p>If you answered yes to any of the following questions, there is a Bryan Wildenthal Memorial Library Research Guide for you!  </p>
<ul>
<li><a href="http://www.sulross.edu/library/docs/guides/duetomorrow.pdf">Help!  My Paper is Due Tomorrow!</a></li>
<li>Citing Sources Using:</li>
<dd><a href="http://www.sulross.edu/library/infolit/tutorials/apa.php">APA</a></dd>
<dd><a href="http://www.sulross.edu/library/infolit/tutorials/mla.php">MLA</a></dd>
<li><a href="http://www.sulross.edu/library/docs/guides/pagenumbering_word07.pdf">Page Numbering in Word 2007</a></li>
</ul>
<p>If these guides aren&#8217;t what you need, check out our other <a href="http://www.sulross.edu/library/infolit/tutorials.php">Instructional Materials and Tutorials</a>!  They just may be what you are looking for.</p>
<p><strong>And don&#8217;t forget&#8230; you can always <a href="https://libit.sulross.edu/refquest/index.php">email us a reference question</a>, call the Information Desk (432-837-8272), or come in in-person and talk to a librarian! That is what we are here for!</strong></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Buscar mensajes en Outlook 2003 ó 2007]]></title>
<link>http://tuscursosenvideo.wordpress.com/2009/11/23/buscar-mensajes-en-outlook/</link>
<pubDate>Mon, 23 Nov 2009 23:50:10 +0000</pubDate>
<dc:creator>alcecal</dc:creator>
<guid>http://tuscursosenvideo.wordpress.com/2009/11/23/buscar-mensajes-en-outlook/</guid>
<description><![CDATA[En Outlook 2003 ó 2007, puede buscar todos los mensajes enviados o recibidos de una persona, usando ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>En Outlook 2003 ó 2007, puede buscar todos los mensajes enviados o recibidos de una persona, usando las Carpetas de búsqueda.</p>
<ol>
<li>Haga clic en Carpetas de búsqueda</li>
<li>Presione el botón derecho</li>
<li>Seleccione Nueva carpeta de búsqueda&#8230;</li>
<li>Seleccione Con palabras específicas</li>
<li>Haga clic en el botón Elegir</li>
<li>Escriba la palabra a buscar</li>
<li>Haga clic en Agregar</li>
<li>Haga clic en Aceptar dos veces</li>
<li>Se crea una carpeta con todos los mensajes de esa persona que se pueden encontrar en la bandeja de entrada, elementos enviados, elementos eliminados, fuentes RSS</li>
</ol>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[MCAS: MS Word 2007: Lesson 04]]></title>
<link>http://arcticlenora.wordpress.com/2009/11/23/mcas-ms-word-2007-lesson-04/</link>
<pubDate>Mon, 23 Nov 2009 13:35:10 +0000</pubDate>
<dc:creator>arcticlenora</dc:creator>
<guid>http://arcticlenora.wordpress.com/2009/11/23/mcas-ms-word-2007-lesson-04/</guid>
<description><![CDATA[Setting Indents: Format Paragraphs (Skill 2.1.4) Changing Alignment: Format Paragraphs (Skill 2.1.4)]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><ul>
<li>Setting Indents: Format Paragraphs (Skill 2.1.4)</li>
<li>Changing Alignment: Format Paragraphs (Skill 2.1.4)</li>
<li>Setting the Line Spacing Within a Paragraph: Format Paragraphs (Skill 2.1.4)</li>
<li>Setting the Spacing Around a Paragraph: Format Paragraphs (Skill 2.1.4)</li>
<li>Creating a Numbered List: Format paragraphs, Create tables and lists (Skill 2.14, 4.2.1)</li>
<li>Creating a Bulleted List: Format paragraphs, Create tables and lists (Skill 2.14, 4.2.1)</li>
<li>Shading a Paragraph: Format Paragraphs (Skill 2.1.4)</li>
<li>Placing a Border Around a Paragraph: Format Paragraphs (Skill 2.1.4)</li>
<li>Using the Tabs Dialog Box: Set and clear tabs (Skill 2.1.5)</li>
<li>Setting the Tabs on the Ruler: Set and clear tabs (Skill 2.1.5)</li>
<li>Clearing Tabs: Set and clear tabs (Skill 2.1.5)</li>
<li>Clearing Formats from a Paragraph: Format paragraphs (Skill 2.1.4)</li>
</ul>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Crear un salto de página en Word]]></title>
<link>http://tuscursosenvideo.wordpress.com/2009/11/23/crear-un-salto-de-pagina-en-word/</link>
<pubDate>Mon, 23 Nov 2009 00:06:48 +0000</pubDate>
<dc:creator>alcecal</dc:creator>
<guid>http://tuscursosenvideo.wordpress.com/2009/11/23/crear-un-salto-de-pagina-en-word/</guid>
<description><![CDATA[Cuando estamos trabajando en un documento de Word 2003 ó 2007, hemos ingresado texto hasta por ejemp]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Cuando estamos trabajando en un documento de Word 2003 ó 2007, hemos ingresado texto hasta por ejemplo la mitad de la página y necesitamos irnos a una nueva página.</p>
<p>En la mayoría de los casos, presionamos Enter muchas veces hasta llegar a la siguiente página y continuar escribiendo.</p>
<p>Microsoft Word, nos permite crear un salto de página para evitarnos presionar varias veces la tecla Enter.</p>
<p>Para crear un salto de página, presione <strong>Ctrl+Enter</strong>, y continue escribiendo en la nueva página</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Data/View Separation in Word 2007 using Word XML Data Binding and OpenXML]]></title>
<link>http://lennilobel.wordpress.com/2009/11/20/dataview-separation-in-word-2007-using-word-xml-data-binding-and-openxml/</link>
<pubDate>Fri, 20 Nov 2009 14:34:12 +0000</pubDate>
<dc:creator>Leonard Lobel</dc:creator>
<guid>http://lennilobel.wordpress.com/2009/11/20/dataview-separation-in-word-2007-using-word-xml-data-binding-and-openxml/</guid>
<description><![CDATA[The OpenXML file format used by Microsoft Office 2007 enables programmatic document manipulation wit]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-19.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-18.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-17.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-16.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-15.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-14.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-13.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-12.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-11.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-10.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-09.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-08.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-07.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-06.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-05.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-04.png"></a><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-02.png"></a></p>
<p>The OpenXML file format used by Microsoft Office 2007 enables programmatic document manipulation without automating Word, so that Word does not need to be installed alongside your code, which is great for server applications. In this post, I&#8217;ll show you how to use OpenXML to implement bi-directional data binding between a Word document and XML data. <strong>This new feature in Word 2007 delivers the best data/view separation we&#8217;ve seen to date in Microsoft Office.</strong> And (for a LINQ junkie such as myself, anyway) the best part is that it works so nicely with LINQ to XML.</p>
<p>We&#8217;ll begin by creating a document with <em>content controls</em>. Then we&#8217;ll write a small amount of code to embed an XML file into the document and bind the content controls to various elements in the XML.</p>
<p>Before starting, you need to download the OpenXML SDK 2.0. Once the SDK is installed, you&#8217;ll have the assemblies you need to programmatically manipulate Office documents using the OpenXML API. You can download the SDK from here: <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C6E744E5-36E9-45F5-8D8C-331DF206E0D0&#38;displaylang=en">http://www.microsoft.com/downloads/details.aspx?FamilyId=C6E744E5-36E9-45F5-8D8C-331DF206E0D0&#38;displaylang=en</a></p>
<h3>Create the Document</h3>
<p>We&#8217;ll create a simple document with three content controls that will be bound to the following XML data:</p>
<pre class="brush: plain;">&#60;Customer&#62;
  &#60;Name&#62;John Doe&#60;/Name&#62;
  &#60;Expiration&#62;2/1/2010&#60;/Expiration&#62;
  &#60;AmountDue&#62;$129.50&#60;/AmountDue&#62;
&#60;/Customer&#62;</pre>
<p>Start a new document in Word 2007, and type the word Dear followed by a space. We now want to inject our first content control for the customer name. You can add content controls to your document from the Developer tab on the ribbon, but since that tab is hidden by default, you&#8217;ll need to show it first. Click the Office button and choose Word Options. Then check the &#8220;Show Developer tab in the Ribbon&#8221; checkbox and click OK.</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/01.png"></a></p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-01.png"><img class="alignnone size-full wp-image-508" title="WordBinding-01" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-01.png" alt="" width="546" height="275" /></a></p>
<p>With the cursor still positioned after the text &#8220;Dear &#8220;, click in the Developer tab to insert a new Text content control:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-02.png"><img title="WordBinding-02" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-02.png" alt="" width="546" height="228" /></a></p>
<p>We&#8217;ll be assigning tag names to identify content controls for data binding in our code. To view the tag names in Word as we setup the content controls, click the Design Mode button in the Developer tab:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-03.png"><img title="WordBinding-03" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-03.png" alt="" width="546" height="228" /></a></p>
<p>With the content control still selected, click Properties:</p>
<p> <a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-04.png"><img title="WordBinding-04" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-04.png" alt="" width="546" height="228" /></a></p>
<p>Set the Tag of the content control to <em>Customer/Name</em>, which is an XPath expression that refers to the &#60;Name&#62; element nested inside the &#60;Customer&#62; element of our XML data.</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-05.png"><img title="WordBinding-05" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-05.png" alt="" width="277" height="332" /></a></p>
<p>Click OK to close the dialog box. Notice how Word displays the tag name in the content control in Design Mode:</p>
<p> <a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-06.png"><img title="WordBinding-06" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-06.png" alt="" width="546" height="228" /></a></p>
<p>Continue adding text to the document, and insert two more content controls in a similar fashion for the expiration date and amount due fields. Use the same Text content control for the amount due field like we used for the customer name field, but use a Date Picker content control for the expiration date field:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-07.png"><img title="WordBinding-07" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-07.png" alt="" width="234" height="150" /></a></p>
<p>After setting the tag names of the additional content controls to the appropriate XPath expressions (Customer/Expiration and Customer/AmountDue), your document should look something like this:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-08.png"><img title="WordBinding-08" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-08.png" alt="" width="628" height="254" /></a></p>
<p>Turn off Design Mode to hide the tag names from the content controls:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-09.png"><img title="WordBinding-09" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-09.png" alt="" width="628" height="218" /></a></p>
<p>Save the document as <em>CustomerReminder.docx</em>. We have already established a separation of variable data and fixed document text, and could easily setup document protection at this point to allow manual data entry only for content controls. That&#8217;s cool all by itself, but we&#8217;re going to take this to the next level and implement automatic data binding between these content controls and a separate XML file. Although Word doesn&#8217;t care what values you assign to content control tags, we will now write code to find all tagged content controls, and treat those tags as XPath expressions that point to various XML elements in our XML data.</p>
<p>If you&#8217;re not already aware, all Office 2007 documents (including Word docx files) are actually compressed zip files (&#8220;packages&#8221;) that hold a collection of related XML &#8220;parts.&#8221; You can see this easily by simply appending <em>.zip</em> to the document filename and then opening it from Windows Explorer:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-10.png"><img title="WordBinding-10" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-10.png" alt="" width="628" height="280" /></a></p>
<p>After examining the contents of the document package, rename the filename extension back to &#8220;.docx.&#8221;</p>
<h3>Write the Code</h3>
<p>Start Visual Studio and create a new Windows Forms project. Now set references to the two assemblies you&#8217;ll need for OpenXML programming: <em>DocumentFormat.OpenXml</em> and <em>WindowsBase</em> (these can be found on the .NET tab of the Add Reference dialog box). The first assembly exposes the OpenXML object model for document manipulation, and the second assembly provides the support for embedding and extracting parts to and from the document package:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-11.png"><img title="WordBinding-11" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-11.png" alt="" width="297" height="389" /></a></p>
<p>Drop a button onto the form named <em>btnInit</em> and supply code for its <em>Click </em>event handler. You&#8217;ll also need a few additional <em>using</em> statements for importing some namespaces. The complete code listing below shows the required <em>using</em> statements and the <em>btnInit_Click</em> event handler.</p>
<pre class="brush: plain;">using System;
using System.IO;
using System.Linq;
using System.Windows.Forms;
using System.Xml.Linq;

using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;

namespace OpenXmlWordDataBinding
{
  public partial class Form1 : Form
  {
    public Form1()
    {
      InitializeComponent();
    }

    private void btnInit_Click(object sender, EventArgs e)
    {
      var xml =
        new XElement(&#34;Customer&#34;,
          new XElement(&#34;Name&#34;, &#34;John Doe&#34;),
          new XElement(&#34;Expiration&#34;, &#34;2/1/2010&#34;),
          new XElement(&#34;AmountDue&#34;, &#34;$129.50&#34;));

      var docxFile = @&#34;..\..\CustomerReminder.docx&#34;;

      using (var wpd = WordprocessingDocument.Open(docxFile, true))
      {
        var mainPart = wpd.MainDocumentPart;
        var xmlPart = mainPart.AddNewPart&#60;CustomXmlPart&#62;();
        using (Stream partStream = xmlPart.GetStream(FileMode.Create, FileAccess.Write))
        {
          using (StreamWriter outputStream = new StreamWriter(partStream))
          {
            outputStream.Write(xml);
          }
        }

        var taggedContentControls =
          from sdt in mainPart.Document.Descendants&#60;SdtRun&#62;()
          let sdtPr = sdt.GetFirstChild&#60;SdtProperties&#62;()
          let tag = (sdtPr == null ? null : sdtPr.GetFirstChild&#60;Tag&#62;())
          where tag != null
          select new
          {
            SdtProps = sdtPr,
            TagName = tag.GetAttribute(&#34;val&#34;, &#34;http://schemas.openxmlformats.org/wordprocessingml/2006/main&#34;).Value
          };

        foreach (var taggedContentControl in taggedContentControls)
        {
          var binding = new DataBinding();
          binding.XPath = taggedContentControl.TagName;
          taggedContentControl.SdtProps.Append(binding);
        }

        mainPart.Document.Save();
      }
    }
  }
}</pre>
<p>Let&#8217;s analyze this code piece by piece. First, we construct the XML data as a graph of XML objects using <em>LINQ to XML functional construction</em>:</p>
<pre class="brush: plain;">var xml =
  new XElement(&#34;Customer&#34;,
    new XElement(&#34;Name&#34;, &#34;John Doe&#34;),
    new XElement(&#34;Expiration&#34;, &#34;2/1/2010&#34;),
    new XElement(&#34;AmountDue&#34;, &#34;$129.50&#34;));</pre>
<p>Next, we invoke <em>WordprocessingDocument.Open</em> to open the Word document for write access using the OpenXML SDK. We do this inside of a <em>using</em> block to ensure proper disposal of unmanaged resources in the event that unhandled exception occurs inside of the block. The boolean <em>true</em> value specified for the second parameter means that we&#8217;re opening the document for write access:</p>
<pre class="brush: plain;">var docxFile = @&#34;..\..\CustomerReminder.docx&#34;;
using (var wpd = WordprocessingDocument.Open(docxFile, true))</pre>
<p>Our code needs to do two things to the document at this point: add a new XML part containing the data to be bound, and assign the appropriate bindings to the content controls. Realize that this is code that will only execute once; subsequently, we&#8217;ll only be extracting/embedding the XML part from/to the document package using normal zip compression methods.</p>
<h3>Add a New XML Part</h3>
<p>With the document open and accessible to our code via the <em>wpd</em> variable, we invoke the <em>AddNewPart&#60;CustomXmlPart&#62;</em> method on <em>wpd.MainDocumentPart</em> to retrieve a new XML part in <em>xmlPart</em>. The new XML part exposes a <em>GetStream</em> method that enables us to stream content into and out of it. We take the generic <em>Stream</em> returned by <em>GetStream</em> and wrap a <em>StreamWriter</em> around it. The XML content can then be sent into the new XML part by writing to the <em>StreamWriter</em>. Again, we use nested <em>using</em> blocks on the stream objects to ensure proper cleanup if an exception occurs:</p>
<pre class="brush: plain;">var mainPart = wpd.MainDocumentPart;
var xmlPart = mainPart.AddNewPart&#60;CustomXmlPart&#62;();
using (Stream partStream = xmlPart.GetStream(FileMode.Create, FileAccess.Write))
{
  using (StreamWriter outputStream = new StreamWriter(partStream))
  {
    outputStream.Write(xml);
  }
}</pre>
<p>Now that the XML data is embedded as an XML part inside of the document&#8217;s <em>.docx</em> package, it&#8217;s available for data binding to content controls. The next and last thing we need to do is to programmatically find the tagged content controls inside the document and assign XML data bindings using the XPath expressions we defined in the content control tags.</p>
<h3>Add the Data Bindings</h3>
<p>Learning how to program Word with OpenXML is all about exploring the special XML markup language used by Word (a dialect known as <em>WordprocessingML</em>) and discovering the element and attribute names used to represent the document. You can view the document&#8217;s markup by examining the <em>word/document.xml</em> part inside of the <em>.docx</em> package. It can take quite a bit of detective work as you undergo the exploration and discovery process, but once you&#8217;re armed with the information you need, it&#8217;s very simple and straightforward to write a LINQ to XML query to get at what you need to in the document.</p>
<p>For example, here is how the customer name content control is expressed in WordprocessingML:</p>
<pre class="brush: plain;">&#60;w:sdt&#62;
     &#60;w:sdtPr&#62;
           &#60;w:tag w:val=&#34;Customer/Name&#34;/&#62;
           &#60;w:id w:val=&#34;852281&#34;/&#62;
           &#60;w:placeholder&#62;
                &#60;w:docPart w:val=&#34;DefaultPlaceholder_22675703&#34;/&#62;
           &#60;/w:placeholder&#62;
           &#60;w:showingPlcHdr/&#62;
           &#60;w:text/&#62;
     &#60;/w:sdtPr&#62;
     &#60;w:sdtContent&#62;
           &#60;w:r w:rsidRPr=&#34;004E1B99&#34;&#62;
                &#60;w:rPr&#62;
                      &#60;w:rStyle w:val=&#34;PlaceholderText&#34;/&#62;
                &#60;/w:rPr&#62;
                &#60;w:t&#62;Click here to enter text.&#60;/w:t&#62;
           &#60;/w:r&#62;
     &#60;/w:sdtContent&#62;
&#60;/w:sdt&#62;</pre>
<p>An analysis of this XML shows how Word stores content controls inside a document. Specifically, Word creates a <em>&#60;w:sdt&#62;</em> element (structured document tag) and nests a <em>&#60;w:sdtPr&#62;</em> element (structured document tag properties) inside of it. And nested beneath that, Word stores the content control&#8217;s tag name in the <em>w:val</em> attribute of a <em>&#60;w:Tag&#62;</em> element. These element names can be referred to programmatically using the OpenXML API type names <em>SdtRun</em>, <em>SdtProperties</em>, and <em>Tag</em>, respectively. Thus, the following LINQ to XML query retrieves all tagged content controls in our document:</p>
<pre class="brush: plain;">var taggedContentControls =
  from sdt in mainPart.Document.Descendants&#60;SdtRun&#62;()
  let sdtPr = sdt.GetFirstChild&#60;SdtProperties&#62;()
  let tag = (sdtPr == null ? null : sdtPr.GetFirstChild&#60;Tag&#62;())
  where tag != null
  select new
  {
     SdtProps = sdtPr,
     TagName = tag.GetAttribute(&#34;val&#34;, &#34;http://schemas.openxmlformats.org/wordprocessingml/2006/main&#34;).Value
  };</pre>
<p>In this query, the <em>from</em> clause uses the <em>Descendants&#60;SdtRun&#62;</em> method to retrieve all the <em>&#60;w:sdt&#62;</em> elements in the document. For each one, the first <em>let</em> clause uses the <em>GetFirstChild&#60;SdtProperties&#62;</em> method to retrieve the nested <em>&#60;w:sdtPr&#62;</em> element beneath it. The second <em>let</em> clause then performs a similar operation to retrieve the <em>&#60;w:tag&#62;</em> element nested beneath that. Since you cannot assume that every <em>&#60;w:sdt&#62;</em> element will always have a nested <em>&#60;w:sdtPr&#62;</em> element, the second <em>let</em> clause tests <em>sdtPr</em> for null before trying to invoke <em>GetFirstChild&#60;Tag&#62;</em> on it. The <em>where</em> clause ultimately filters our all content controls that have not been tagged.</p>
<p>The <em>select </em>clause constructs an anonymous type that returns two properties for each tagged content control. The first is the <em>&#60;w:sdtPr&#62;</em> which will be needed to reference the location at which we&#8217;ll inject the XML binding element. The second is the tag name extracted from the <em>&#60;w:tag&#62;</em> element&#8217;s <em>&#60;w:val&#62;</em> attribute (the full OpenXML namespace needs to be specified for <em>w</em> to retrieve the attribute value), which supplies the XPath expression for the binding. The LINQ query returns the results in a sequence that we then iterate to set the bindings:</p>
<pre class="brush: plain;">foreach (var taggedContentControl in taggedContentControls)
{
  var binding = new DataBinding();
  binding.XPath = taggedContentControl.TagName;
  taggedContentControl.SdtProps.Append(binding);
}

mainPart.Document.Save();</pre>
<p>For each tagged content control, we create a <em>DataBinding</em> object, set its <em>XPath</em> property to the tag name which is known provide an XPath expression referencing the desired XML data, and add the binding as a new element inside of the <em>&#60;w:sdtPr&#62;</em> element. Finally, invoking the <em>Save</em> method saves the modified document back to disk. If you examine the WordprocessingML now, you&#8217;ll see that our code added a &#60;w:dataBinding&#62; element with a w:xpath attribute to the &#60;w:sdtPr&#62; element in each content control. For example, the customer name content control now has the following element in its &#60;w:sdtPr&#62; section:</p>
<pre class="brush: plain;">&#60;w:dataBinding w:xpath=&#34;Customer/Name&#34; /&#62;</pre>
<p>Now let&#8217;s examine the docx package again. Add the <em>.zip</em> extension to the document filename and crack it open. Notice the new <em>customXML</em> folder that wasn&#8217;t there before. This is where all custom XML parts added to the document get stored.</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-12.png"><img title="WordBinding-12" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-12.png" alt="" width="628" height="280" /></a></p>
<p>Double-click the <em>customXML</em> folder to reveal the <em>item.xml</em> file contained inside of it:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-13.png"><img title="WordBinding-13" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-13.png" alt="" width="628" height="280" /></a></p>
<p>Now double-click <em>item.xml</em> to view it in IE:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-14.png"><img title="WordBinding-14" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-14.png" alt="" width="628" height="407" /></a></p>
<p>Look familiar? That&#8217;s the XML our code injected into the document as a custom XML part!</p>
<p>Now close the zip, rename the file back as <em>.docx</em>, and open it in Word:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-15.png"><img title="WordBinding-15" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-15.png" alt="" width="628" height="218" /></a></p>
<p>All the content placeholders have now been filled in with data from our XML file Does it get better than this? You bet! This thing works bi-directional. So go ahead and change John Doe to Sue Taylor:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-16.png"><img title="WordBinding-16" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-16.png" alt="" width="628" height="218" /></a></p>
<p>Now save the document, and rename it as <em>.zip</em> once again. This time, extract the <em>item.xml</em> file instead of opening it in IE, so that you can edit it in Notepad:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-17.png"><img title="WordBinding-17" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-17.png" alt="" width="382" height="209" /></a></p>
<p>Beautiful. Word pushed the data from the modified content controls in the document back out to the XML file. Let&#8217;s now edit the XML; for example, we&#8217;ll change the expiration date:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-18.png"><img title="WordBinding-18" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-18.png" alt="" width="382" height="209" /></a></p>
<p>Save the XML file, push it back into the zip package, rename the zip package back to <em>.docx</em>, and re-open it in Word one last time:</p>
<p><a href="http://lennilobel.wordpress.com/files/2009/11/wordbinding-19.png"><img title="WordBinding-19" src="http://lennilobel.wordpress.com/files/2009/11/wordbinding-19.png" alt="" width="628" height="218" /></a></p>
<p>Now that&#8217;s what I call data/view separation! With XML data binding in Word, your application can easily view and change data elements without ever digging into the document text.</p>
<p>Of course, this only scratches the surface of what&#8217;s possible with OpenXML. It&#8217;s also worth mentioning that the same thing can be achieved using VSTO (Visual Studio Tools for Office) and the Word object model, but we&#8217;ll leave that for a future post. Until then, happy coding!</p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
