Alla säger att XML är den viktigaste nya funktionen i Office 2003. Men om du inte befinner dig i ett företag med massor av XML-scheman som flyter runt, har du förmodligen inte kunnat ta reda på hur du kopierar den coola demo du såg Microsoft göra under lanseringen av Office 2003. För dig som prenumererar på Woodys nyhetsbrev inser du nu att Woody kommer att följa förklaringen av XML, vilket får oss att vänta 4 veckor (eller mer) för att få hela historien. Så innan Woody någonsin kan komma till saken kommer jag att gå igenom ett långt tips som förklarar hur man kan utnyttja XML till fullo i Office 2003.
Det stora löftet
Microsoft säger att du nu kan lagra data som XML och enkelt omdirigera data. Öppna samma datafil och det ser ett sätt ut i Excel, öppna datafilen och det ser ett annat sätt ut i Word. Det är väldigt kraftfullt. Vi har också det faktum att eftersom Office 2003 anser att XML är ett inbyggt filformat, kan alla med något programmeringsspråk skriva inbyggda XML-filer. Om du har QBasic eller Rexx eller något annat kan du nu skapa XML Excel (ExcelML?) -Filer i farten.
Endast i Excel Professional
Vi står nu inför ett klasssystem i Office 2003. Fullt XML-stöd är inte tillgängligt i dessa utgåvor: (Koder med kursiv stil står för var du kan köpa var och en: R = Retail, P = Förinstallerad med ny dator, V = Volymlicensiering , A = Academic Licensing, S = School Resellers).
- Microsoft Office Small Business Edition 2003 (R, P, V, A)
- Microsoft Office Standard Edition 2003 (R, V, A, S)
- Microsoft Office Basic Edition 2003 (P)
- Microsoft Office Student and Teacher Edition 2003 (R, S)
Fullt XML-stöd finns i dessa utgåvor:
- Microsoft Office Professional Edition 2003 (R, P, V, A, S)
- Microsoft Office Professional Enterprise Edition 2003 (inkluderar InfoPath) (V)
- Microsoft Excel 2003 (R) (Den fristående Excel-rutan anses vara professionell)
Om du har turen att ha en av de "mindre" versionerna av Office 2003, kan din billigaste uppgraderingsväg vara att köpa detaljhandelsversionen av Excel. Om du inte arbetar i en företagsmiljö, är det enda sättet att få InfoPath (det nya verktyget som låter dig skapa formulär och XML-scheman) att köpa detaljhandelsboxversionen.
Vad är XML? Är det som HTML?

XML står för Extensible markup language. Om du någonsin har tittat på vyn "Visa källa" på en webbsida i Anteckningar, känner du till XML-strukturen. Medan HTML tillåter vissa taggar, som TABLE, BODY, TR, TD, XML tillåter alla taggar. Du kan skapa alla slags taggar för att beskriva dina data. Här är en skärmdump av några XML-data som jag skrev i anteckningar:
Här är några enkla regler om XML:
- Varje bit data måste börja och sluta med en identisk tagg: Data
- Taggnamn är skiftlägeskänsliga. och är INTE giltiga taggar eftersom versalerna i slutkoden inte är desamma som stora bokstäver i början.
- XML-filen måste börja och sluta med en root-tagg. Det kan bara finnas en rottagg i en fil. I exemplet ovan är rottaggen.
- Du kan ha en tom tagg - lägg snedstrecket i slutet av taggen istället för början:
- Om du häckar taggar måste du stänga den inre taggen innan du stänger den yttre taggen. Medan HTML tillåter denna struktur, klicka på Avbryt. Detta är inte giltigt i XML. data fungerar, men data fungerar inte.
Alfabetssoppa: Tre filtyper
Här är de tre filerna vi kommer att stöta på när vi arbetar med XML.
- .XML är datafilen som visas ovan
- .XSD är en XML-schemadefinition. Det här är en viktig fil. Datarelationer definieras här. Datavalidering definieras också här. För att faktiskt kunna göra Microsoft-demo behöver du en XML-schemafil. Medan vem som helst kan skriva XML i anteckningsblocket behöver vi ett schema för att kunna göra något coolt. Jag visar dig hur du skapar en nedan.
- .XSL är en XML StyleSheet-språkfil - med dessa kan du omformulera data från ett format till ett annat.
Överlägset är det största hindret hur man skapar Schema-filen. Du kan öppna en XML-fil i Excel men du kan inte göra några omvandlingar utan ett schema. Lyckligtvis kommer Excel att skapa ett standardschema åt dig, men det är INTE uppenbart hur du använder schemat. Låt oss gå igenom stegen.
-
Öppna ett tomt anteckningsblock. Kopiera dessa data underifrån och klistra in dem i Anteckningar. Spara filen som test.xml.
ABC Co 123 Main Salem OH 44460 12345 100 10.50 YXZ Co 234 State Akron OH 44313 23456 10 20.50
- Använd File - Open i Excel. Om rutan "Filer av typen:" är inställd på Alla Microsoft Excel-filer visas test.xml. Klicka på Öppna.
-
Först presenteras dialogrutan Öppna XML. Senare vill vi använda den kraftfulla XML-källfönstret, men vi kan inte göra det förrän vi har ett giltigt schema. Välj just nu att öppna som en XML-lista.
Öppna XML-dialogrutan -
Därefter får vi informationsrutan att XML inte har ett schema. Detta är ett fantastiskt meddelande - för Microsoft kommer nu att skapa ett schema åt dig i farten.
Schemavarningsmeddelande -
Här är våra data i Excel. Det är ganska coolt. De aktiverar den fantastiska nya Excel 2003-listfunktionen (vanlig genväg: Ctrl + L). Med listfunktionen påslagen har vi autofilter i varje kolumn och en Access-liknande asteriskrad för att lägga till ny data.
XML-data i Excel-kalkylblad -
Nu - här är det odokumenterade tricket. Ett tips på hatten till Microsofts Excel XML-guru Chad Rothschiller för att visa oss detta coola trick. Starta Visual Basic Editor med Alt + F11. I Visual Basic Editor, tryck Ctrl + G för att öppna den omedelbara rutan. I den omedelbara rutan skriver du:
Print ActiveWorkbook.XmlMaps(1).Schemas(1).Xml
Omedelbart fönster i VBE Kommer du ihåg meddelandet i # 4? Microsoft erbjöd sig att bygga ett schema i farten för oss. Denna lilla kod ovan skriver ut schemat. Klicka på Enter och schemat skrivs ut i omedelbar ruta.
Schema i den omedelbara rutan Öppna ett tomt anteckningsblock, kopiera data från det omedelbara fönstret och klistra in i det tomma anteckningsblocket. Du kan nu se hela schemat för vår enkla dataset.
Spara schemafilen Du kan nu spara anteckningsfilen som TodaysOrders.xsd
- Gå tillbaka till Excel och stäng testdataset.
-
Öppna test.xml igen från Excel. Den här gången anger du att du vill använda XML-källfönstret och klickar sedan på OK i rutan Schemainformation.
Välj öppningsalternativ för XML-källa -
Nu får du ett tomt kalkylblad, men XML-källfönstret till höger visar alla tillgängliga fält.
XML-källfönster -
Välj rullgardinsmenyn Alternativ och välj Förhandsgranska data för att se ett exempel på varje element i aktivitetsfönstret.
Förhandsgranska data i aktivitetsfönstret -
Lägg till en snyggt formaterad titel i ditt tomma kalkylark. Dra säljorderelementet och släpp det i cell B6.
Dra och släpp dataelement - Om listverktygsfältet inte visas väljer du Visa - Verktygsfält - Lista för att visa verktygsfältet.
-
Välj Uppdatera XML-data i verktygsfältet
Uppdatera XML-dataknapp -
Exempel på XML-data som vi skrev ovan läggs till i kalkylbladet.
Resultat XML-data på kalkylbladet - Spara arbetsboken som en vanlig Excel-fil, kanske kallad OrderReport.xls
Uppdaterar data dagligen
Om du kan få ditt system att börja skriva ut dagliga beställningar till Test.XML varje dag, är du redo. Öppna OrderReport.xls, uppdatera XML-data så får du en snyggt formaterad rapport om dina XML-order varje dag. Det här är ganska kraftfullt - jag ställer in formateringen en gång, öppnar filen varje dag, klickar på Uppdatera och jag har en snyggt formaterad rapport med data från XML-uppsättningen.

Använda Excel för att skapa XML-data
Kan vi använda Excel för att skapa nya XML-data? Nu när vi har ett schema definierat, ja det kan vi! Till vårt befintliga kalkylark kan vi låta våra telefonbeställare lägga till nya data i Excel-filen hela dagen. I slutet av dagen använder du File - SaveAs. Välj att spara är som typ: XML-data.

Bekräfta vilken karta du ska använda:

Återanvända data i Word
Nu när vi har skapat ett schema och data, låt oss öppna data i Microsoft Word 2003. Efter att ha öppnat TestAsData.xml i Word 2003 får vi standarddatavyn i Word.

Du kan formatera detta dokument:

Tryck Ctrl + Skift + X för att stänga av fälten:

Använda XSL-vyer för att återanvända data
Ovanstående exempel med hjälp av Dra och släpp skapar faktiskt inte en Transform. Om du skapar Transform-filer kan du enkelt förvandla XML-data till olika vyer i Word. Det är här den verkliga kraften kommer in. Innan jag visar hur du skapar din egen transform, låt oss gå igenom hur Microsoft ställde in demo i Office 2003-lanseringen.
För att prova detta på din kopia av Word 2003, ladda ner XML-provpaketet. Zip-filen innehåller:
- En XML-fil: SampleMemo.xml
- Ett schema: Memo.xsd
- Tre transformfiler: elegant.xsl, professional.xsl, samtida.xsl
Följ dessa steg:
- Starta Word 2003
-
Från menyn väljer du Verktyg - mallar och tillägg …
Mallar och tillägg -
Klicka på fliken XML-schema och välj Lägg till schema …
Fliken XML-schema -
Navigera till var du packade upp exempelfilerna. Välj Memo.xsd och klicka på Öppna.
Välja XSD-fil för att lägga till ett schema -
Ge dialogrutan Schemainställningar ett vänligt namn i rutan Alias. Kanske något som "Memo". Klicka på OK.
Lägg till ett alias i schemat Vid denna tidpunkt är Word nu medveten om memo-schemat. Därefter måste vi göra Word 2003 medveten om Transforms. Observera att Microsoft kallar dessa "lösningar".
-
Du bör fortfarande vara i dialogrutan Mallar och tillägg. Klicka på Schemabibliotek …
Schemabibliotek - I dialogrutan Schemabibliotek väljer du Memo i den översta listrutan. Detta aktiverar knappen i den nedre delen av dialogrutan för "Lägg till lösning …".
-
Klicka på knappen Lägg till lösning.
Lägger till lösning -
Navigera till mappen med dina .xsl-filer. Välj Contemporary.xsl och klicka på Öppna.
Välj Transformera fil -
I dialogrutan Lösningsinställningar, ge transformfilen ett vänligt namn, till exempel "Samtida". Klicka på OK.
Alias för omvandlingsfilen -
Upprepa steg 8 till 10 för att lägga till Elegant.xsl och Professional.xsl. Klicka på OK för att stänga schemabiblioteket. Klicka på OK för att stänga mallar och tillägg.
Slutför schemabiblioteket Vid Microsoft-demo gjordes alla dessa 11 steg bakom kulisserna. Allmänheten gick in och vi såg hur de visade oss dessa steg.
-
Vi ska öppna SampleMemo.xml i Word. Här är anteckningsvisningen för den här filen. Det är vanlig XML-data utan någon formatering.
Exempel på XML-datafilsinnehåll -
Öppna SampleMemo.xml från Word. Bakom kulisserna skannar Microsoft XML-filen för att upptäcka att detta är data med Memo-schemat. Det ser i schemabiblioteket för att se om det finns en matchning i "memo" -schemat. När det finns hittar den alla XSL-lösningar som vi har lagt till. Eftersom vi har tre väljer Word en som ska visas och erbjuder oss de andra i XML-dokumentets aktivitetsfönster. Det här är väldigt fantastiskt.
Här är fönstret XML-datavyer:
Fönstret XML-datavyer Här är standardvyn för data (detta använder Elegant xsl).
Standardvy av data Klicka på Endast data så får du bara data utan formatering.
Visa endast data Klicka på Contemporary, och några sekunder senare har du en helt annan formaterad vy av data:
Formaterad vy av data -
Du kan visa / dölja de lila XML-taggarna med Ctrl + Shift + X.
Visa / dölj XML-taggar
Skapa dina egna XSL-transformfiler
Jag kan se kraften. Men hittills har vi bara använt nedladdade XSL-filer för någon annans data. Vi behöver verkligen ett sätt att skapa en XSL-fil för våra egna data. Återigen, om du arbetar för ett företag som är XML-rikt, har någon förmodligen redan konfigurerat dessa omvandlingar. Men om du är den första personen i ditt företag som testar XML-grejer, måste du gå igenom den relativt smärtsamma uppgiften att skapa dina egna transformfiler.
Så här ska vi göra det. Först ska jag skapa ett snyggt dokument i Word som visar hur jag vill visa XML-data. Jag kommer att sätta in lätt att hitta platshållare där jag vill att XML-fälten ska gå. Jag kommer att spara detta dokument som Word XML. Sedan använder jag Notepad, jag kommer att redigera dokumentet, klistra in någon XSL-kod och spara filen. Detta bör skapa en anpassad XSL-transformfil.
-
Bygg ett snyggt formaterat exempel i Word. Nedan har jag byggt en orderbekräftelse. Detta har en logotyp, inledande text, fälten från XML-filen och avslutande text. Jag har använt olika teckensnitt och färger. Konventionen att använda *** för att markera fälten är helt enkelt att hjälpa mig när jag tittar genom Word XML-filen i Anteckningar.
Mall i Word -
Jag kommer att spara den här filen som Word XML.
Sparar som Word XML - Jag öppnar två anteckningsfönster. Den ena har försäljningsorder.xml och den andra har en befintlig elegant.xsl-tranformkod. (fortsättning följer).