XML
XML (eXtensible Markup Language) on laiendatav märgistuskeel, mida kasutatakse andmete salvestamiseks ja edastamiseks struktureeritud kujul, loetaval nii inimestele kui masinatele.
- XML-is kasutatakse märgendeid (tags) nagu HTML-is, kuid see ei defineeri välimust, vaid andmestruktuuri.
- XML on tekstipõhine formaat.
- Sobib andmete vahetuseks eri süsteemide vahel (nt veebirakendused, API-d).
- Struktuur on hierarhiline — nagu puu (juurelement, alam-elemendid jne).
Näidis:
<inimene synniaasta="1947" elukoht="Moskva">
<Name>Ninna</Name>
<lapsed>
<inimene synniaasta="1988" elukoht="Tallinn">
<Name>Olga</Name>
<lapsed>
<inimene synniaasta="2006" elukoht="Tallinn">
<Name>Veronika</Name>
</inimene>
</lapsed>
</inimene>
<inimene synniaasta="1984" elukoht="Tallinn">
<Name>Julia</Name>
<lapsed>
<inimene synniaasta="2012" elukoht="Tallinn">
<Name>Eva</Name>
</inimene>
<inimene synniaasta="2016" elukoht="Tallinn">
<Name>Aria</Name>
</inimene>
<inimene synniaasta="2022" elukoht="Tallinn">
<Name>Vladislav</Name>
</inimene>
</lapsed>
</inimene>
</lapsed>
</inimene>
XSLT
XSLT (eXtensible Stylesheet Language Transformations) on keel XML-andmete teisendamiseks. Sellega saab muuta XML-andmeid teiseks XML-iks, HTML-iks, tekstiks või muuks väljundiks.
- XSLT loeb algset XML-faili (allikdokument).
- Sellele rakendatakse XSLT-stiilileht (eeskirjade kogum).
- Tulemus on uus dokument (nt HTML, uus XML jne).
<xsl:for-each select="lapsed/inimene">
<xsl:value-of select="Name"/>
<xsl:if test="position() != last()">, </xsl:if>
</xsl:for-each>
</td>
<td>
<xsl:for-each select="lapsed/inimene">
<xsl:value-of select="@synniaasta"/>
<xsl:if test="position() != last()">, </xsl:if>
</xsl:for-each>
</td>
XML SKEEM
XML skeem (inglise keeles XML Schema) on dokument, mis määratleb XML-faili struktuuri, reeglid ja andmetüübid. See on nagu “reeglistik” või “mall”, mille järgi XML-andmed peavad olema koostatud.
Skeemi abil saab määrata:
- millised elemendid ja atribuudid on lubatud;
- milliseid andmetüüpe need elemendid võivad sisaldada;
- piirangud – kohustuslikud elemendid, kordused jne
XML skeemi loomine
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="inimene">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element name="vanus" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>