Meeskond:InsertNameHere: Difference between revisions

From ICO wiki
Jump to navigationJump to search
 
(9 intermediate revisions by the same user not shown)
Line 2: Line 2:
*Villu Viirsalu
*Villu Viirsalu
==XML==
==XML==
[http://enos.itcollege.ee/~vviirsal/VR2/Contacts.xml väljund]


===XML===
===XML===
<source lang="xml" collapse="true" first-line="2">
<source lang="xml" collapse="true" first-line="2">
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="Contacts.xslt"?>
<?xml-stylesheet type="text/xsl" href="Contacts.xslt"?>
Line 10: Line 13:


<contact>
<contact>
<name title="Ms"><![CDATA[Some Name]]></name>
<name title="Ms"><![CDATA[Jebediah Kerman]]></name>
<contactInfo>
<contactInfo>
<infoType type="phone">
<infoType type="phone">
Line 20: Line 23:
</infoType>
</infoType>
<infoType type="email">
<infoType type="email">
<data type="work"><![CDATA[email1@email.email]]></data>
<data type="work"><![CDATA[Jeb@kmail.kom]]></data>
<data type="home"><![CDATA[email2@email.email]]></data>
<data type="home"><![CDATA[jebDud678@kmail.kom]]></data>
</infoType>
</infoType>
</contactInfo>
</contactInfo>
Line 32: Line 35:


<contact>
<contact>
<name><![CDATA[Other Name]]></name>
<name><![CDATA[Bill Kerman]]></name>
<contactInfo>
<contactInfo>
<infoType type="email">
<infoType type="email">
<data><![CDATA[some@mail.internet]]></data>
<data><![CDATA[billyboy68@kmail.internet]]></data>
</infoType>
</infoType>
</contactInfo>
</contactInfo>
Line 43: Line 46:
<group group="work"/>
<group group="work"/>
</groups>
</groups>
</contact>
<contact>
<name><![CDATA[Bob Kerman]]></name>
<contactInfo>
<infoType type="address">
<data><![CDATA[KSS]]></data>
</infoType>
<infoType type="phone">
<data><![CDATA[0118 999 881 999 119 7253]]></data>
</infoType>
</contactInfo>
<notes/>
<groups/>
</contact>
</contact>
</contacts>
</contacts>
Line 130: Line 146:
                 <table border="1">
                 <table border="1">


                     <!--header row-->
                     <!--header-->
                     <tr>
                     <tr>
                         <th>Name</th>
                         <th>Name</th>
Line 150: Line 166:
                             <!--name-->
                             <!--name-->
                             <td>
                             <td>
                                <xsl:if>
                               
                                </xsl:if>
                                 <xsl:value-of select="name"/>
                                 <xsl:value-of select="name"/>
                             </td>
                             </td>
Line 161: Line 174:
                             </td>
                             </td>


                             <!--list of phone numbers-->
                             <!--phones-->
                             <td>
                             <td>
                                 <ul>
                                 <ul>
Line 172: Line 185:
                             </td>
                             </td>


                             <!--list of emails-->
                             <!--emails-->
                             <td>
                             <td>
                                 <ul>
                                 <ul>
Line 183: Line 196:
                             </td>
                             </td>


                             <!--list of addresses-->
                             <!--addresses-->
                             <td>
                             <td>
                                 <ul>
                                 <ul>
Line 198: Line 211:
                                 <xsl:value-of select="notes"/>
                                 <xsl:value-of select="notes"/>
                             </td>
                             </td>
                             <!--groups-->
                             <!--groups-->
                             <td>
                             <td>
Line 208: Line 222:
                                 </ul>
                                 </ul>
                             </td>
                             </td>
                         </tr>
                         </tr>
                     </xsl:for-each>
                     </xsl:for-each>
                     <!--end of for each for contact in contacts-->
                     <!--end of contact in contacts-->


                 </table>
                 </table>
Line 220: Line 233:
</xsl:stylesheet>
</xsl:stylesheet>
</source>
</source>
==Veebiteenus==
===Analüüs===
Tegemist on telefoniraamatu teenusega. Kasutaja saab lisada kontakte, neid muuta ning otsida. On olemas tavakasutaja kes pääseb ligi vaid enda kontaktiraamatule ning administraator kes saab jälgida lehekülje statistikat, luua piiranguid (nt gruppide hulgale) ning vajadusel kustutada kasutajaid.
====Must have====
*kasutaja
**registeerimine
**sisse logimine
**andmed
*kasutajastatistika
*kontaktid
**lisamine
**otsimine
**grupid
**andmed
***liigid
**notes
====Nice to have====
*kasutaja
**profiil
***pilt
*kontakt
**pildi kuvamine
**varia kuvamine
*friendShare™ - jaga enda kontakte teiste inimestega
====ERD====
[[File:Graafik.png]]
==Klientrakendused==

Latest revision as of 13:47, 7 April 2015

Meeskond

  • Villu Viirsalu

XML

väljund

XML

<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="Contacts.xslt"?>
<contacts>

	<contact>
		<name title="Ms"><![CDATA[Jebediah Kerman]]></name>
		<contactInfo>
			<infoType type="phone">
				<data type="mobile"><![CDATA[54321557]]></data>
			</infoType>
			<infoType type="address">
				<data type="work"><![CDATA[Address 87-2]]></data>
				<data type="home"><![CDATA[Highlander 5-987-5.23, Mun]]></data>
			</infoType>
			<infoType type="email">
				<data type="work"><![CDATA[Jeb@kmail.kom]]></data>
				<data type="home"><![CDATA[jebDud678@kmail.kom]]></data>
			</infoType>
		</contactInfo>
		<notes />
		<groups>
			<group group="friend" />
			<group group="family" />
		</groups>
	</contact>

	<contact>
		<name><![CDATA[Bill Kerman]]></name>
		<contactInfo>
			<infoType type="email">
				<data><![CDATA[billyboy68@kmail.internet]]></data>
			</infoType>
		</contactInfo>
		<birthday>2000-12-12</birthday>
		<notes><![CDATA[these are some notes]]></notes>
		<groups>
			<group group="work"/>
		</groups>
	</contact>
	<contact>
		<name><![CDATA[Bob Kerman]]></name>
		<contactInfo>
			<infoType type="address">
				<data><![CDATA[KSS]]></data>
			</infoType>
			<infoType type="phone">
				<data><![CDATA[0118 999 881 999 119 7253]]></data>
			</infoType>
		</contactInfo>
		<notes/>
		<groups/>
	</contact>
</contacts>

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="contacts">
        <xs:complexType>
            <xs:sequence>
                <xs:element maxOccurs="unbounded" name="contact">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="name">
                                <xs:complexType>
                                    <xs:simpleContent>
                                        <xs:extension base="xs:string">
                                            <xs:attribute name="title" type="xs:string" use="optional" />
                                        </xs:extension>
                                    </xs:simpleContent>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="contactInfo">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element minOccurs="0" maxOccurs="unbounded" name="infoType">
                                            <xs:complexType>
                                                <xs:sequence>
                                                    <xs:element maxOccurs="unbounded" name="data">
                                                        <xs:complexType>
                                                            <xs:simpleContent>
                                                                <xs:extension base="xs:string">
                                                                    <xs:attribute name="type" type="xs:string" use="optional" />
                                                                </xs:extension>
                                                            </xs:simpleContent>
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:sequence>
                                                <xs:attribute name="type" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                            <xs:element minOccurs="0" name="birthday" type="xs:date"/>
                            <xs:element name="notes" />
                            <xs:element name="groups">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element minOccurs="0" maxOccurs="unbounded" name="group">
                                            <xs:complexType>
                                                <xs:attribute name="group" type="xs:string" use="required" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

XSLT

<?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>
            <title>Contacts</title>
            <body>
                <h2>Contacts</h2>
                <table border="1">

                    <!--header-->
                    <tr>
                        <th>Name</th>
                        <th>Birthday</th>
                        <th>Phone</th>
                        <th>Email</th>
                        <th>Address</th>
                        <th>Notes</th>
                        <th>Groups</th>
                    </tr>

                    <!--else row-->
                    <!--for each contact in contacts-->
                    <xsl:for-each select="contacts/contact">

                        <!--row-->
                        <tr>

                            <!--name-->
                            <td>
                                <xsl:value-of select="name"/>
                            </td>

                            <!--birthday-->
                            <td>
                                <xsl:value-of select="birthday"/>
                            </td>

                            <!--phones-->
                            <td>
                                <ul>
                                    <xsl:for-each select="contactInfo/infoType[@type='phone']/data">
                                        <li>
                                            <xsl:value-of select="."/>
                                        </li>
                                    </xsl:for-each>
                                </ul>
                            </td>

                            <!--emails-->
                            <td>
                                <ul>
                                    <xsl:for-each select="contactInfo/infoType[@type='email']/data">
                                        <li>
                                            <xsl:value-of select="." />
                                        </li>
                                    </xsl:for-each>
                                </ul>
                            </td>

                            <!--addresses-->
                            <td>
                                <ul>
                                    <xsl:for-each select="contactInfo/infoType[@type='address']/data">
                                        <li>
                                            <xsl:value-of select="." />
                                        </li>
                                    </xsl:for-each>
                                </ul>
                            </td>

                            <!--notes-->
                            <td>
                                <xsl:value-of select="notes"/>
                            </td>

                            <!--groups-->
                            <td>
                                <ul>
                                    <xsl:for-each select="groups/group">
                                        <li>
                                            <xsl:value-of select="@group" />
                                        </li>
                                    </xsl:for-each>
                                </ul>
                            </td>
                        </tr>
                    </xsl:for-each>
                    <!--end of contact in contacts-->

                </table>
            </body>
        </html>

    </xsl:template>
</xsl:stylesheet>

Veebiteenus

Analüüs

Tegemist on telefoniraamatu teenusega. Kasutaja saab lisada kontakte, neid muuta ning otsida. On olemas tavakasutaja kes pääseb ligi vaid enda kontaktiraamatule ning administraator kes saab jälgida lehekülje statistikat, luua piiranguid (nt gruppide hulgale) ning vajadusel kustutada kasutajaid.

Must have

  • kasutaja
    • registeerimine
    • sisse logimine
    • andmed
  • kasutajastatistika
  • kontaktid
    • lisamine
    • otsimine
    • grupid
    • andmed
      • liigid
    • notes

Nice to have

  • kasutaja
    • profiil
      • pilt
  • kontakt
    • pildi kuvamine
    • varia kuvamine
  • friendShare™ - jaga enda kontakte teiste inimestega

ERD

Klientrakendused