Unnamed Team
Meeskond
- Andreas Kirotar
- Jaan Kostõgov
Idee
XML ideeks on arvuti mängude kataloog.
Veebiteenuse analüüs
Nt: http://store.steampowered.com/ https://www.g2a.com/?d=276 Nimetupood on rakendus, millega on võimalik kasutajatel osta mängude võtmeid. Rakenduse eesmärk on lubada kasutajatel ennast registreerida ja sisselogida, kui kasutaja on sisse loginud, siis on tal võimalik vaadata ja otsida mänge. Mänge on võimalik ka filtreerida hinna ja kategooria kaudu. Mängu cd-key saab lisada kindla mängu alla. Mängu infot saab lisada ja muuta admin kasutaja. Cd-key saab lisada admin kasutaja, kuid (nice-to-have võiks olla müük-kasutaja). Reitingu süsteem müüjale on 5 palli süsteemis, mis tekib hinnangute jagamise tulemusena (nice-to-have). Põhilised(must-have) vajadused rakendusele on järgmised: kuulutuste olemasolu, kergesti kasutatav rakendus, maksevõimalus(nice-to-have). Selleks, et põhilisi vajadusi täita on vaja mängude kirjelduste olemasolu süsteemis, ehk admin lisab kirjeldused. Rakenduse tugevuseks on see eest mõistlik kasutajaliides ning mugav viis soovitud toote leidmiseks.
Must have features
Külastaja
Külastaja saab:
- Registreerida kasutajaks
- Logida registreeritud kasutajaga sisse
Kasutaja
Kasutaja saab:
- Saab sisselogida
- Saab vaadata olemasoleviad mänge ja neid ostukorvi lisada
- Saab koostada favourite mängu liste
- Saab muuta oma kasutaja andmeid
- Otsida mänge
- Otsida mänge kategooriate läbi
Admin
Admin saab:
- Saab kustutada mänge
- Saab lisada mänge
- Saab muuta mängude kirjeldust
- Saab kasutajaid moderaatoriks luua
- Saab kustutada kasutajaid
Nice to have features
- Külastav kasutaja saab ilma registreerimata veebi vaadata
- Saab hinnata mänge
- Saab tõmmata mänge
- Saab sooritada ostu
ERD
Selline võiks olla veebirakenduse ERD File:EntityRelationshipDiagram.jpg
XML / XSD / XSLT
<?xml version="1.0" encoding="utf-8" ?>
<GameShop>
<Genres>
<Genre>Action</Genre>
<Genre>RPG</Genre>
<Genre>Action</Genre>
<Genre>Fantasy</Genre>
<Genre>Sci-fi</Genre>
<Genre>Horror</Genre>
</Genres>
<Games>
<Game Title="Fallout4" Year="2016" >
<Genres>
<Genre>FPS</Genre>
<Genre>Action</Genre>
<Genre>Sci-fi</Genre>
</Genres>
<Images>
<Image>http://cdn.akamai.steamstatic.com/steam/apps/377160/header.jpg?t=1486403180</Image>
<Image>http://cdn.akamai.steamstatic.com/steam/apps/377160/header.jpg?t=1486403180</Image>
</Images>
<SystemRequiments RequimentType="Minimum">
<Oses>
<Os Architecture="64bit">Windows 7</Os>
<Os Architecture ="64bit">Windows 10</Os>
</Oses>
<Processor>Intel Core i5-2400/AMD FX-8320 or better</Processor>
<Memory>4 GB RAM</Memory>
<Graphics>NVIDIA GTX 670 2GB/AMD Radeon HD 7870 2GB or better</Graphics>
<Storage>25 GB available space</Storage>
<AdditionalNotes>Requires broadband internet connection for Multiplayer</AdditionalNotes>
</SystemRequiments>
<SystemRequiments RequimentType="Reccomended" >
<Oses>
<Os Architecture="64bit">Windows 7</Os>
<Os Architecture ="64bit">Windows 10</Os>
<Os Architecture="64bit">Windows 8</Os>
</Oses>
<Processor> Intel Core i7-3770/AMD FX-8350 or better</Processor>
<Memory>8 GB RAM</Memory>
<Graphics>NVIDIA GTX 970 4GB/AMD Radeon R9 290 4GB or better</Graphics>
<Storage>25 GB available space</Storage>
<AdditionalNotes>Requires broadband internet connection for Multiplayer</AdditionalNotes>
</SystemRequiments>
</Game>
<Game Title="Fallout 3 NewVegas" Year="2016" >
<Genres>
<Genre>FPS</Genre>
<Genre>Action</Genre>
<Genre>Sci-fi</Genre>
</Genres>
<Images>
<Image>https://i.kinja-img.com/gawker-media/image/upload/s--dWfA2BXt--/ilz6yicwfquqoyalkwjd.jpg</Image>
</Images>
<SystemRequiments RequimentType="Minimum">
<Oses>
<Os Architecture="32bit">Windows xp</Os>
<Os Architecture ="32bit">Windows Vista</Os>
</Oses>
<Processor>2.4 Ghz Intel Pentium 4 or equivalent processor</Processor>
<Memory>1 GB (XP)/ 2 GB (Vista) </Memory>
<Graphics>Direct X 9.0c compliant video card with 256MB RAM (NVIDIA 6800 or better/ATI X850 or better) </Graphics>
<Storage>25 GB available space</Storage>
<AdditionalNotes> Online play requires log-in to Games For Windows - Live</AdditionalNotes>
</SystemRequiments>
</Game>
<Game Title="Dark Souls 3" Year="2016">
<Genres>
<Genre>RPG</Genre>
</Genres>
<Images>
<Image>
https://d1r7xvmnymv7kg.cloudfront.net/sites_products/darksouls3/assets/img/DARKSOUL_facebook_mini.jpg
</Image>
<Image>
https://cdn2.vox-cdn.com/uploads/chorus_asset/file/6323691/Dark_Souls_3_concept_art.0.jpg
</Image>
<Image>
https://i.ytimg.com/vi/Ha8eRiP0DmI/maxresdefault.jpg
</Image>
</Images>
<SystemRequiments RequimentType="Minimum">
<Oses>
<Os Architecture="32bit">Windows xp</Os>
<Os Architecture ="32bit">Windows Vista</Os>
</Oses>
<Processor>Intel Core i3-2100 / AMD® FX-6300</Processor>
<Memory>4 GB RAM</Memory>
<Graphics>NVIDIA® GeForce GTX 750 Ti / ATI Radeon HD 7950</Graphics>
<DirectX>Version 11</DirectX>
<Network>Broadband Internet connection</Network>
<Storage>25 GB available space</Storage>
<SoundCard>DirectX 11 sound device</SoundCard>
</SystemRequiments>
<SystemRequiments RequimentType="Recommended">
<Oses>
<Os Architecture="64bit">Windows 7</Os>
<Os Architecture ="64bit">Windows 8.1</Os>
<Os Architecture ="64bit">Windows 10</Os>
</Oses>
<Processor>Intel Core i7-3770 / AMD® FX-8350</Processor>
<Memory>8 GB RAM </Memory>
<Graphics>NVIDIA® GeForce GTX 970 / ATI Radeon R9 series</Graphics>
<DirectX>Version 11</DirectX>
<Network>Broadband Internet connection</Network>
<Storage>25 GB</Storage>
<SoundCard>DirectX 11 sound device</SoundCard>
</SystemRequiments>
</Game>
</Games>
</GameShop>
XSD
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified">
<xs:element name="GameShop">
<xs:complexType>
<xs:sequence>
<xs:element name="Genres">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Genre" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Games">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Game">
<xs:complexType>
<xs:sequence>
<xs:element name="Genres">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Genre" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Images">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Image" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element maxOccurs="unbounded" name="SystemRequiments">
<xs:complexType>
<xs:sequence>
<xs:choice maxOccurs="unbounded">
<xs:element name="Oses">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Os">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="Architecture" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Processor" type="xs:string" />
<xs:element name="Memory" type="xs:string" />
<xs:element name="Graphics" type="xs:string" />
<xs:element name="Storage" type="xs:string" />
<xs:element name="AdditionalNotes" type="xs:string" />
<xs:element name="DirectX" type="xs:string" />
<xs:element name="Network" type="xs:string" />
<xs:element name="SoundCard" type="xs:string" />
</xs:choice>
</xs:sequence>
<xs:attribute name="RequimentType" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Title" type="xs:string" use="required" />
<xs:attribute name="Year" type="xs:unsignedShort" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
XSLT
XSLT (HTML)
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" version="1.0" exclude-result-prefixes="msxsl">
<xsl:output method="html" indent="yes" />
<xsl:template match="/">
<html>
<head>
<title>Games by genre(windows 7)</title>
</head>
<body>
<xsl:for-each select="/GameShop/Genres/Genre">
<xsl:variable name="MainGenre" select="." />
<h2>
<xsl:value-of select="$MainGenre" />
</h2>
<ul style="list-style-type:none">
<xsl:for-each select="/GameShop/Games/Game">
<xsl:if test="(Genres/Genre = $MainGenre) and (SystemRequiments/Oses/Os ='Windows 7')">
<xsl:variable name="Game" select="." />
<li>
Name:
<xsl:value-of select="./@Title" />
</li>
<li>
Release year:
<xsl:value-of select="./@Year" />
</li>
<li>
<xsl:for-each select="./Images/Image">
<xsl:variable name="ImageUrl" select="." />
<img src="{$ImageUrl}" width="400" height="200" />
</xsl:for-each>
</li>
<li>Requirements:</li>
<li>
Operating systems:
<xsl:value-of select="$Game/SystemRequiments/Oses" />
</li>
<li>
Processor:
<xsl:value-of select="$Game/SystemRequiments/Processor" />
</li>
<li>
Memory:
<xsl:value-of select="$Game/SystemRequiments/Memory" />
</li>
<li>
Graphics card:
<xsl:value-of select="$Game/SystemRequiments/Graphics" />
</li>
<li>
Storage:
<xsl:value-of select="$Game/SystemRequiments/Storage" />
</li>
<li>
Notes:
<xsl:value-of select="$Game/SystemRequiments/AdditionalNotes" />
</li>
<li>
Sound:
<xsl:value-of select="$Game/SystemRequiments/SoundCard" />
</li>
<li>
DirectX:
<xsl:value-of select="$Game/SystemRequiments/DirectX" />
</li>
</xsl:if>
</xsl:for-each>
</ul>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
XSLT (XML)
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output method="xml" indent="yes"/>
<xsl:template match="@* | node()">
<GameShop>
<Games>
<xsl:for-each select="/GameShop/Games/Game">
<xsl:if test="Genres/Genre = 'Action'">
<xsl:variable name="Game" select="."/>
<Game>
<Name>
<xsl:value-of select="./@Title"/>
</Name>
<Realease>
<xsl:value-of select="./@Year"/>
</Realease>
<Images>
<xsl:for-each select="./Images/Image">
<xsl:variable name="ImageUrl" select="."/>
<img src="{$ImageUrl}" width="400" height="200"/>
</xsl:for-each>
</Images>
<xsl:if test="SystemRequiments/@RequimentType = 'Minimum'">
<MinimumSystemRequiments>
<OperatingSystems>
<xsl:for-each select="./SystemRequiments/Oses/Os">
<OperatingSystem>
<xsl:value-of select="."/>
</OperatingSystem>
</xsl:for-each>
</OperatingSystems>
<Processor>
<xsl:value-of select="$Game/SystemRequiments/Processor"/>
</Processor>
<Memory>
<xsl:value-of select="$Game/SystemRequiments/Memory"/>
</Memory>
<GraphicsCard>
<xsl:value-of select="$Game/SystemRequiments/Graphics"/>
</GraphicsCard>
<Storage>
<xsl:value-of select="$Game/SystemRequiments/Storage"/>
</Storage>
<Notes>
<xsl:value-of select="$Game/SystemRequiments/AdditionalNotes"/>
</Notes>
<Sound>
<xsl:value-of select="$Game/SystemRequiments/SoundCard"/>
</Sound>
<DirectX>
<xsl:value-of select="$Game/SystemRequiments/DirectX"/>
</DirectX>
</MinimumSystemRequiments>
</xsl:if>
</Game>
</xsl:if>
</xsl:for-each>
</Games>
</GameShop>
</xsl:template>
</xsl:stylesheet>
XSLT(XML) Tulem
<?xml version="1.0" encoding="utf-8"?>
<GameShop>
<Games>
<Game>
<Name>Fallout4</Name>
<Realease>2016</Realease>
<Images>
<img src="http://cdn.akamai.steamstatic.com/steam/apps/377160/header.jpg?t=1486403180" width="400" height="200" />
<img src="http://cdn.akamai.steamstatic.com/steam/apps/377160/header.jpg?t=1486403180" width="400" height="200" />
</Images>
<MinimumSystemRequiments>
<OperatingSystems>
<OperatingSystem>Windows 7</OperatingSystem>
<OperatingSystem>Windows 10</OperatingSystem>
</OperatingSystems>
<Processor>Intel Core i5-2400/AMD FX-8320 or better</Processor>
<Memory>4 GB RAM</Memory>
<GraphicsCard>NVIDIA GTX 670 2GB/AMD Radeon HD 7870 2GB or better</GraphicsCard>
<Storage>25 GB available space</Storage>
<Notes>Requires broadband internet connection for Multiplayer</Notes>
<Sound></Sound>
<DirectX></DirectX>
</MinimumSystemRequiments>
</Game>
<Game>
<Name>Fallout 3 NewVegas</Name>
<Realease>2016</Realease>
<Images>
<img src="https://i.kinja-img.com/gawker-media/image/upload/s--dWfA2BXt--/ilz6yicwfquqoyalkwjd.jpg" width="400" height="200" />
</Images>
<MinimumSystemRequiments>
<OperatingSystems>
<OperatingSystem>Windows xp</OperatingSystem>
<OperatingSystem>Windows Vista</OperatingSystem>
</OperatingSystems>
<Processor>2.4 Ghz Intel Pentium 4 or equivalent processor</Processor>
<Memory>1 GB (XP)/ 2 GB (Vista) </Memory>
<GraphicsCard>Direct X 9.0c compliant video card with 256MB RAM (NVIDIA 6800 or better/ATI X850 or better) </GraphicsCard>
<Storage>25 GB available space</Storage>
<Notes> Online play requires log-in to Games For Windows - Live</Notes>
<Sound></Sound>
<DirectX></DirectX>
</MinimumSystemRequiments>
</Game>
</Games>
</GameShop>
Log
- 17.03 Esimene kokkusaamine, XML, XSD, XSLT(HTML) kujul loomine.
- 20.03 Kaugtööna XSLT(HTML) ja XSLT(XML) lõpetamine, Wiki lehe loomine.