Meeskond:InsertNameHere: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Vviirsal (talk | contribs)
mNo edit summary
Vviirsal (talk | contribs)
 
(3 intermediate revisions by the same user not shown)
Line 233: 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 12: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