Meeskond:ArturJaSobrad

From ICO wiki
Revision as of 18:57, 2 April 2015 by Atomba (talk | contribs) (Analüüs)

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
  • kasutajaid on võimalik lisada gruppidesse
  • kasutajatel on võimalik jagada omavahel kontakte ja kontaktide gruppe
  • võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks
  • ...

NICE TO HAVE funktsionaalsus

  • keyword suggestion
  • ...

Veebiteenus

Klientrakendused