Meeskond:ArturJaSobrad
From ICO wiki
Meeskond
Liikmed:
- Anni Klammer
- Artur Tomba - projektijuht
- Oliver Vahenõmm
XML
XML
Telefoniraamat XML kujul.
<?xml version="1.0" encoding="utf-8"?>
<Phonebook>
<Groups>
<Group name="Family">
<Person id="1">
<Firstname><![CDATA[Anna]]></Firstname>
<Lastname><![CDATA[Nuga]]></Lastname>
<Contacts>
<Contact type="Phone">55555555</Contact>
<Contact type="Skype">anna.nuga@skype.com</Contact>
</Contacts>
</Person>
<Person id="2">
<Firstname><![CDATA[Anti]]></Firstname>
<Lastname><![CDATA[Nuga]]></Lastname>
<Contacts>
<Contact type="Phone">09876543</Contact>
<Contact type="Skype">anti.nuga@skype.com</Contact>
</Contacts>
</Person>
</Group>
<Group name="Work">
<Person id="4">
<Firstname><![CDATA[Peeter]]></Firstname>
<Lastname><![CDATA[Termomeeter]]></Lastname>
<Contacts>
<Contact type="Phone">56666666</Contact>
<Contact type="Skype">peetrike@skype.com</Contact>
</Contacts>
</Person>
</Group>
<Group name="Friends">
<Person id="3">
<Firstname><![CDATA[Minu]]></Firstname>
<Lastname><![CDATA[Sõber]]></Lastname>
<Contacts>
<Contact type="Phone">123456789</Contact>
<Contact type="Skype">minu.sober@skype.com</Contact>
</Contacts>
</Person>
<Person id="5">
<Firstname><![CDATA[Kati]]></Firstname>
<Lastname><![CDATA[Karu]]></Lastname>
<Contacts>
<Contact type="Phone">545423154</Contact>
<Contact type="Skype">olenkati@skype.com</Contact>
</Contacts>
</Person>
</Group>
</Groups>
</Phonebook>
XSD
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Phonebook">
<xs:complexType>
<xs:sequence>
<xs:element name="Groups">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Group">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Person">
<xs:complexType>
<xs:sequence>
<xs:element name="Firstname" type="xs:string" />
<xs:element name="Lastname" type="xs:string" />
<xs:element name="Contacts">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Contact">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="type" type="xs:string" use="required" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:unsignedInt" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
XSLT
HTML nimede ja igaühe kontaktide kuvamiseks gruppide kaupa.
<?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="html" indent="yes"/>
<xsl:template match="/">
<html>
<head>
<title>Phonebook</title>
</head>
<body>
<xsl:for-each select="Phonebook/Groups/Group">
<h3>
<xsl:value-of select="@name"/>
</h3>
<table border="1" style="border:1px solid black;">
<tr>
<td>Firstname</td>
<td>Lastname</td>
<td>Phone</td>
<td>Skype</td>
</tr>
<xsl:for-each select="Person">
<tr>
<td>
<xsl:value-of select="Firstname"/>
</td>
<td>
<xsl:value-of select="Lastname"/>
</td>
<xsl:for-each select="Contacts/Contact">
<td>
<xsl:value-of select="."/>
</td>
</xsl:for-each>
</tr>
</xsl:for-each>
</table>
<br/>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
HTML nimede kuvamiseks tähestiku järjekorras (perekonnanime alusel).
<?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="html" indent="yes"/>
<xsl:template match="/">
<html>
<head>
<title>Phonebook</title>
</head>
<body>
<h3>People</h3>
<table border="1" style="border:1px solid black;">
<th>Firstname</th>
<th>Lastname</th>
<xsl:for-each select="Phonebook/Groups/Group/Person">
<xsl:sort select="Lastname"/>
<tr>
<td>
<xsl:value-of select="Firstname"/>
</td>
<td>
<xsl:value-of select="Lastname"/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Veebiteenus
Analüüs
Projekti kirjeldus
Meie eesmärgiks on luua telefoniraamatu teenus, mille abiga saab kasutaja salvestada kontakte ja otsida nende seast. Rakendus on üles ehitatud lihtsalt ja põhirõhk on pandud efektiivsusele.
MUST HAVE funktsionaalsus
- kasutaja saab teenuses kontakte lisada ja kustutada
- kasutaja saab kontakte nime/telefoninumbri jne abil otsida
- kasutajal on võimalik lisada vajalike kontaktandmete liike
- kasutajal on võimalik oma kontakte jaotada gruppidesse
- kasutajaid on võimalik lisada gruppidesse
- võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks
- ...
NICE TO HAVE funktsionaalsus
- kasutajatel on võimalik jagada omavahel kontakte ja kontaktide gruppe
- keyword suggestion
- sünnipäevakalender
- ...
Andmebaasimudel