XML pro začátečníky

Platí pro
Excel pro Microsoft 365 Word pro Microsoft 365 Outlook pro Microsoft 365 PowerPoint pro Microsoft 365 Access pro Microsoft 365 Excel 2024 Outlook 2024 PowerPoint 2024 Access 2024 Excel 2021 Word 2021 Outlook 2021 PowerPoint 2021 Access 2021 Visio Professional 2021 Excel 2019 Word 2019 Outlook 2019 PowerPoint 2019 Access 2019 Visio Professional 2019 Excel 2016 Word 2016 Outlook 2016 PowerPoint 2016 Access 2016 Visio Professional 2016 Office 2016

Možná jste slyšeli o jazyku XML (Extensible Markup Language) a možná jste slyšeli mnoho důvodů, proč by ho vaše organizace měla používat. Co přesně je kód XML? Tento článek vysvětluje základy jazyka XML, co to je a jak funguje.

V tomto článku

Stručný přehled revizí, značek a značek

Pro pochopení jazyka XML je užitečné pochopit myšlenku označování dat. People vytvářeli dokumenty po staletí a stejně dlouho tyto dokumenty označovali. Učitelé například neustále značkují studentské práce. Říkají studentům, aby přesouvali odstavce, objasňovali věty, opravovali pravopisné chyby a podobně. Označování dokumentu je způsob, jakým definujeme strukturu, význam a vizuální vzhled informací v dokumentu. Pokud jste někdy používali funkci Sledování změn v aplikaci systém Microsoft Office Word, používali jste počítačovou formu revizí.

V počítačích se "přirážka" také vyvinula v "přirážka". Revize je proces použití kódů nazývaných značky (nebo někdy tokeny) k definování struktury, vizuálního vzhledu a – v případě XML – významu libovolných dat.

Kód HTML pro tento článek je dobrým příkladem počítačových značek v praxi. Při procházení (v aplikaci Microsoft Internet Explorer klikněte na stránku pravým tlačítkem myši a potom klikněte na příkaz Zobrazit zdroj), uvidíte kombinaci čitelného textu a značek HTML (Hypertext Markup Language), například <p> a <h2>. Značky v dokumentech HTML a XML se dají snadno rozpoznat, protože jsou uzavřené v lomených závorkách. Ve zdrojovém kódu tohoto článku plní značky HTML různé úkoly, například definují začátek a konec každého odstavce (<p> ... </p>) a označují umístění každého obrázku.

Co z něj tedy dělá XML?

Dokumenty HTML a XML obsahují data, která jsou obklopena značkami, ale tím podobnost mezi těmito dvěma jazyky končí. V HTML značky definují vzhled a chování dat – nadpisy budou začínat sem, odstavec bude začínat tam atd. V XML značky definují strukturu a význam dat – to, o jaká data se jedná.

Když popíšete strukturu a význam svých dat, umožňujete je opakovaně používat mnoha způsoby. Pokud máte například blok s daty o prodeji a jednotlivé položky v bloku jsou jasně označené, můžete do sestavy prodeje načíst jenom ty položky, které potřebujete, a ostatní položky do účetní databáze. Jinak řečeno, můžete použít jeden systém ke generování dat a jejich označení značkami XML a potom tato data zpracovat v libovolném počtu dalších systémů bez ohledu na hardwarovou platformu nebo operační systém. Tato přenositelnost je důvodem, proč se jazyk XML stal jednou z nejpopulárnějších technologií pro výměnu dat.

Mějte přitom na paměti následující skutečnosti:

  • Místo jazyka XML nelze použít jazyk HTML. Data XML ale můžete zabalit do značek HTML a zobrazit je na webové stránce.

  • Jazyk HTML je omezen na předdefinovanou sadu značek, které sdílejí všichni uživatelé.

  • Jazyk XML umožňuje vytvořit libovolnou značku, kterou potřebujete k popisu dat a struktury těchto dat. Řekněme například, že potřebujete uložit a sdílet informace o domácích mazlíčcích. Můžete vytvořit následující kód XML:

    <?xml version="1.0"?>
    <CAT>
      <NAME>Izzy</NAME>
      <BREED>Siamese</BREED>
      <AGE>6</AGE>
      <ALTERED>yes</ALTERED>
      <DECLAWED>no</DECLAWED>
      <LICENSE>Izz138bod</LICENSE>
      <OWNER>Colin Wilcox</OWNER>
    </CAT>
    
    

Je vidět, že díky značkám XML můžete přesně vědět, na jaký druh dat se díváte. Pokud například víte, že se jedná o údaje o kočce, můžete snadno zjistit její jméno, věk a podobně. Schopnost vytvářet tagy, které definují téměř jakoukoli datovou strukturu, je to, co dělá XML "rozšiřitelným".

Nezaměňujte však značky v této ukázce kódu se značkami v souboru HTML. Pokud například vložíte strukturu XML do souboru HTML a zobrazíte tento soubor v prohlížeči, budou výsledky vypadat nějak takto:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

Prohlížeč vaše značky XML ignoruje a zobrazí jenom data.

Pár slov o správně formátovaných datech

Můžete zaslechnout někoho z oddělení IT, jak se zmiňuje o "správně vytvořeném" souboru XML. Soubor XML ve správném formátu musí splňovat řadu velmi přísných pravidel, kterými se řídí jazyk XML. Pokud soubor těmto pravidlům nevyhovuje, XML přestane fungovat. Například v předchozí ukázce kódu má každá otevírací značka koncovou značku, takže ukázka dodržuje jedno z pravidel pro správné formátování. Pokud odeberete značku a zkusíte soubor otevřít v některé z aplikací Office, zobrazí se chybová zpráva a tato aplikace vám zabrání soubor používat.

Pravidla pro vytváření XML ve správném formátu nemusíte znát (i když jsou snadno pochopitelná), ale nesmíte zapomínat, že data XML můžete mezi programy a systémy sdílet jenom tehdy, pokud jsou tato data správně vytvořená. Pokud se vám nedaří otevřít soubor XML, je pravděpodobné, že nemá správný formát.

Jazyk XML je také nezávislý na platformě, což znamená, že data XML může číst a zpracovávat jakýkoli program vytvořený pro použití jazyka XML bez ohledu na hardware nebo operační systém. Se správnými značkami XML můžete například pomocí desktopové aplikace otevřít data ze sálového počítače a pracovat s nimi. A bez ohledu na to, kdo vytvoří soubor dat XML, můžete se stejnými daty pracovat v několika aplikacích Office. Vzhledem k tomu, že je jazyk XML tak přenosný, stal se jednou z nejpopulárnějších technologií pro výměnu dat mezi databázemi a uživatelskými počítači.

Jazyk XML používaný jinými programy

Kromě označených dat ve správném formátu používají systémy XML obvykle dvě další součásti: schémata a transformace. V následujících částech je vysvětleno, jak tyto další součásti fungují.

Rychlý pohled na schémata

Nenechte se výrazem "schéma" zastrašit. Schéma je jenom soubor XML, který obsahuje pravidla pro co se může a nemůže nacházet v datovém souboru XML. Soubory schématu mají obvykle příponu názvu souboru XSD, zatímco datové soubory XML používají příponu .xml.

Schémata umožňují programům ověřovat data. Poskytují rámec pro strukturování dat a zajištění toho, aby dávala smysl tvůrci i ostatním uživatelům. Pokud například uživatel zadá neplatná data, například text do pole data, může program uživatele vyzvat k zadání správných dat. Pokud data v souboru XML odpovídají pravidlům v daném schématu, může každý program podporující jazyk XML toto schéma použít ke čtení, interpretaci a zpracování dat. Jak je například znázorněno na následujícím obrázku, aplikace Excel může ověřovat <CAT> data ve schématu CAT.

Schémata umožňují sdílení dat XML aplikacemi.

Schémata můžou být složitá a naučit vás, jak je vytvořit, je nad rámec tohoto článku. (Kromě toho pravděpodobně máte IT oddělení, které ví, jak na to.) Je ale užitečné vědět, jak schémata vypadají. Následující schéma definuje pravidla pro <CAT> ... </CAT> sada značek.


<xsd:element name="CAT">  
  <xsd:complexType>  
    <xsd:sequence>
      <xsd:element name="NAME" type="xsd:string"/>
      <xsd:element name="BREED" type="xsd:string"/>
      <xsd:element name="AGE" type="xsd:positiveInteger"/>
      <xsd:element name="ALTERED" type="xsd:boolean"/>
      <xsd:element name="DECLAWED" type="xsd:boolean"/>
      <xsd:element name="LICENSE" type="xsd:string"/>
      <xsd:element name="OWNER" type="xsd:string"/>        
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

Nedělejte si starosti s pochopením všeho v ukázce. Mějte na paměti tato fakta:

  • Řádkovým položkám v ukázkovém schématu se říká deklarace. Pokud byste potřebovali další informace o zvířeti, jako je jeho barva nebo označení, je možné, že by vaše IT oddělení přidalo do schématu deklaraci. Systém XML můžete měnit podle vyvíjejících se potřeb vaší firmy.
  • Deklarace poskytují obrovskou míru kontroly nad datovou strukturou. Deklarace <xsd:sequence> například znamená, že značky, jako je <NAME> a <BREED> , se musí vyskytovat v pořadí, ve kterém jsou uvedeny výše. Deklarace mohou také určovat typy dat, které mohou uživatelé zadávat. Například výše uvedené schéma vyžaduje kladné číslo pro věk kočky a Booleovské hodnoty (TRUE nebo FALSE) pro značky ALTERED a DECLAWED.
  • Když data v souboru XML vyhovují pravidlům poskytovaným schématem, označují se tato data za platná. Proces kontroly datového souboru XML vůči schématu se nazývá (logicky) ověření. Velkou výhodou používání schémat je, že umožňují zabránit poškození dat. Usnadňují také vyhledání poškozených dat, protože jazyk XML se zastaví, když narazí na problém.

Rychlý pohled na transformace

Jak jsme již zmínili, jazyk XML poskytuje účinné způsoby využití dat. Mechanismus opětovného použití dat se nazývá XSLT (Extensible Stylesheet Language Transformation) nebo jednoduše transformace.

Vy (dobře, vaše IT oddělení) můžete také použít transformace k výměně dat mezi back-endovými systémy, jako jsou databáze. Řekněme třeba, že databáze A ukládá údaje o prodeji do struktury tabulky, která je vhodná pro obchodní oddělení. Databáze B ukládá údaje o příjmech a výdajích ve struktuře tabulek, která je přizpůsobená pro účetní oddělení. Databáze B může pomocí transformace přijímat data z databáze A a zapisovat tato data do správných tabulek.

Kombinace datového souboru, schématu a transformace tvoří základní systém XML. Následující obrázek ukazuje, jak takové systémy obvykle fungují. Datový soubor se ověří ve schématu a pak se vykreslí libovolným počtem použitelných způsobů transformací. V tomto případě transformace nasadí data do tabulky na webové stránce.

Základní struktura souboru XML se schématem a transformací

Následující ukázka kódu ukazuje jeden ze způsobů, jak zapsat transformaci. Načte <data tabulky> CAT do tabulky na webové stránce. Opět platí, že cílem ukázky není ukázat vám, jak zapsat transformaci, ale ukázat vám jednu formu, kterou transformace může mít.


<?xml version="1.0"?>
<xsl:stylesheet version="1.0"> 
<TABLE>
  <TR>
    <TH>Name</TH>
    <TH>Breed</TH>
    <TH>Age</TH>
    <TH>Altered</TH>
    <TH>Declawed</TH>    
    <TH>License</TH>
    <TH>Owner</TH>
  </TR>
  <xsl:for-each select="CAT">
  <TR ALIGN="LEFT" VALIGN="TOP">
    <TD>
      <xsl:value-of select="NAME"/>
    </TD>
    <TD>
      <xsl:value-of select="BREED"/>
    </TD>
    <TD>
      <xsl:value-of select="AGE"/>
    </TD>
    <TD>
      <xsl:value-of select="ALTERED"/>
    </TD>
    <TD>
      <xsl:value-of select="DECLAWED"/>
    </TD>
    <TD>
      <xsl:value-of select="LICENSE"/>
    </TD>
    <TD>
      <xsl:value-of select="OWNER"/>
    </TD>
  </TR>
</xsl:for-each>
</TABLE>

Tato ukázka ukazuje, jak může jeden typ transformace vypadat při kódování, ale pamatujte, že to, co potřebujete, můžete popsat jednoduše v angličtině. Můžete třeba jít za svým IT oddělením a říct, že potřebujete vytisknout údaje o prodeji pro konkrétní oblasti za poslední dva roky, "a potřebuji, aby to vypadalo takto". Vaše IT oddělení pak může napsat (nebo změnit) transformaci, která tuto práci zvládne.

To vše je o to pohodlnější, že Microsoft a rostoucí počet dalších dodavatelů vytvářejí transformace pro pracovní místa všeho druhu. V budoucnu je pravděpodobné, že si budete moci stáhnout transformaci, která buď vyhovuje vašim potřebám, nebo kterou můžete upravit tak, aby vyhovovala vašemu účelu. To znamená, že použití XML bude v průběhu času levnější.

Náhled jazyka XML v systému systém Microsoft Office

Edice Professional systému Office poskytují rozsáhlou podporu jazyka XML. Systém systém Microsoft Office používá formáty souborů založené na jazyce XML, například .docx, .xlsx a .pptx. Vzhledem k tomu, že jazyk XML ukládá data v textovém formátu, nikoli ve vlastním binárním formátu, mohou zákazníci definovat vlastní schémata a používat data mnoha způsoby, aniž by museli platit licenční poplatky. Další informace o nových formátech naleznete v tématu Formáty Open XML a přípony názvů souborů. Mezi další výhody patří:

  • Menší velikosti souborů. Nový formát využívá ZIP a další kompresní technologie ke zmenšení velikosti souboru až o 75 procent ve srovnání s binárními formáty používanými v dřívějších verzích Office.
  • Snadnější obnovení informací a větší bezpečnost. Jazyk XML je čitelný pro člověka, takže pokud dojde k poškození souboru, můžete jej otevřít v programu Poznámkový blok nebo v jiné čtečce textu a obnovit alespoň některé informace. Nové soubory jsou navíc bezpečnější, protože nemůžou obsahovat kód jazyka VBA (jazyk Visual Basic for Application). Pokud použijete nový formát k vytvoření šablon, budou všechny ovládací prvky ActiveX a makra VBA umístěné v samostatném, bezpečnějším oddílu souboru. Kromě toho můžete jakékoli osobní údaje odstranit pomocí nástrojů, jako je Kontrola metadat. Další informace o použití Kontroly metadat najdete v článku Odebrání skrytých dat a osobních údajů kontrolou dokumentů.

Zatím je vše v pořádku, ale co když máte data XML bez schématu? Aplikace Office, které podporují jazyk XML, mají vlastní přístup k práci s daty. Excel schéma odvodí, pokud otevřete XML soubor, který ho ještě neobsahuje. Excel vám pak nabídne možnost načíst tato data do tabulky XML. Pomocí seznamů XML a tabulek můžete data řadit, filtrovat nebo k nim přidávat výpočty.

Povolení nástrojů XML v Office

Karta Vývojář se ve výchozím nastavení nezobrazuje, ale když budete chtít v Office používat příkazy XML, budete ji muset přidat na pás karet. Viz Zobrazení karty Vývojář.