<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.itcollege.ee/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Itambaum</id>
	<title>ICO wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.itcollege.ee/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Itambaum"/>
	<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php/Special:Contributions/Itambaum"/>
	<updated>2026-05-06T21:53:41Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Lebokeiss_O%C3%9C&amp;diff=102288</id>
		<title>Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Lebokeiss_O%C3%9C&amp;diff=102288"/>
		<updated>2016-03-27T21:04:37Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot;=&lt;br /&gt;
&lt;br /&gt;
==Meeskond==&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
==Kasutatav .NET tehnoloogia==&lt;br /&gt;
==Analüüs==&lt;br /&gt;
==Rakenduse sisu==&lt;br /&gt;
&#039;&#039;&#039;Rakenduses on olemas järgmised võimalused (Must have):&#039;&#039;&#039;  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rakenduses võiksid olla lisavõimalused (Should have):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==XML/XSD/XSLT==&lt;br /&gt;
&lt;br /&gt;
===XML===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;Shop&amp;gt;&lt;br /&gt;
  &amp;lt;Users&amp;gt;&lt;br /&gt;
    &amp;lt;User id=&amp;quot;9999999&amp;quot; registerDate=&amp;quot;2005-01-01T08:05:07&amp;quot; disabled=&amp;quot;false&amp;quot; birthDate=&amp;quot;1950-03-09T16:05:07.123&amp;quot; countryCode=&amp;quot;EE&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Username&amp;gt;&amp;lt;![CDATA[Praam]]&amp;gt;&amp;lt;/Username&amp;gt;&lt;br /&gt;
      &amp;lt;Email&amp;gt;&amp;lt;![CDATA[praam22@praam.ee]]&amp;gt;&amp;lt;/Email&amp;gt;&lt;br /&gt;
      &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
      &amp;lt;Pictures&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;7&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Landscape]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[#lit]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Perfectionist]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;777&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Butterflies]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;888&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Funny]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Hilarious]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
      &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
      &amp;lt;Tags&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;![CDATA[Realistic]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
      &amp;lt;/Tags&amp;gt;&lt;br /&gt;
    &amp;lt;/User&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;User id=&amp;quot;001&amp;quot; registerDate=&amp;quot;2002-02-09T09:21:11&amp;quot; disabled=&amp;quot;false&amp;quot; birthDate=&amp;quot;2002-02-09T09:21:11.321&amp;quot; countryCode=&amp;quot;EE&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Username&amp;gt;&amp;lt;![CDATA[Karell]]&amp;gt;&amp;lt;/Username&amp;gt;&lt;br /&gt;
      &amp;lt;Email&amp;gt;&amp;lt;![CDATA[vutlar@ee.ee]]&amp;gt;&amp;lt;/Email&amp;gt;&lt;br /&gt;
      &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Karells desc]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
      &amp;lt;Pictures&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;880&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[This is my 4th attempt at creating anime zoomout by using photo of geographical a location]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;![CDATA[Nature]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;4&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Geography]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Photography]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;5&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Tracing]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;280&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Guide photo how i trace photos]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Photography]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Tracing]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
      &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
      &amp;lt;Tags&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot;&amp;gt;&amp;lt;![CDATA[Tracing]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
      &amp;lt;/Tags&amp;gt;&lt;br /&gt;
    &amp;lt;/User&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
    &amp;lt;User id=&amp;quot;3&amp;quot; registerDate=&amp;quot;2016-03-09T16:05:07&amp;quot; disabled=&amp;quot;false&amp;quot; birthDate=&amp;quot;1996-03-09T16:05:07.123&amp;quot; countryCode=&amp;quot;EE&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Username&amp;gt;&amp;lt;![CDATA[ParanoidZebra]]&amp;gt;&amp;lt;/Username&amp;gt;&lt;br /&gt;
      &amp;lt;Email&amp;gt;&amp;lt;![CDATA[ParanoidZebra@zebra.zoo]]&amp;gt;&amp;lt;/Email&amp;gt;&lt;br /&gt;
      &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Hello world]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
      &amp;lt;Pictures&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;31&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Zebra]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Sun]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;32&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;31&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Zebra]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;33&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Zebra]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Privatetag]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
      &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
      &amp;lt;Tags&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot;&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
      &amp;lt;/Tags&amp;gt;&lt;br /&gt;
    &amp;lt;/User&amp;gt;&lt;br /&gt;
  &amp;lt;/Users&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;Pictures&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;31&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07&amp;quot; makerId=&amp;quot;3&amp;quot; buyerId=&amp;quot;9999999&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Drunk zebra and sunset]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://upload.wikimedia.org/wikipedia/commons/8/83/Zebra_Botswana_edit02.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;32&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07.123&amp;quot; makerId=&amp;quot;3&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Not so drunk zebra and sunset]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://upload.wikimedia.org/wikipedia/commons/8/83/Zebra_Botswana_edit02.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;33&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07.123&amp;quot; makerId=&amp;quot;3&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[No Zebra and sunse]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://upload.wikimedia.org/wikipedia/commons/8/83/Zebra_Botswana_edit02.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;7&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07.123&amp;quot; makerId=&amp;quot;9999999&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Landscape]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[http://i.imgur.com/IL5qx77r.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;777&amp;quot; dateCompleted=&amp;quot;2012-03-09T12:33:07.678&amp;quot; makerId=&amp;quot;9999999&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Purple Butterfly]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[http://i.imgur.com/tJvg7Qd.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;888&amp;quot; dateCompleted=&amp;quot;2016-03-09T11:11:11.555&amp;quot; makerId=&amp;quot;9999999&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Owl how-to]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[http://i.imgur.com/kArLDrg.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;880&amp;quot; dateCompleted=&amp;quot;2016-02-09T09:21:11.321&amp;quot; makerId=&amp;quot;999992&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Anime scenery]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://s-media-cache-ak0.pinimg.com/736x/c8/f8/a5/c8f8a53e2831a5917fbedaac2f08e265.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;280&amp;quot; dateCompleted=&amp;quot;2016-01-02T19:21:11.321&amp;quot; makerId=&amp;quot;299992&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Trace how-to]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://s-media-cache-ak0.pinimg.com/736x/c8/f8/a5/c8f8a53e2831a5917fbedaac2f08e265.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
  &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
&amp;lt;/Shop&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===XSD===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xs:schema attributeFormDefault=&amp;quot;unqualified&amp;quot; elementFormDefault=&amp;quot;qualified&amp;quot; xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;xs:simpleType name=&amp;quot;ValidateEmail&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xs:pattern value=&amp;quot;[A-Za-z0-9_]+([-+.&#039;][A-Za-z0-9_]+)*@[A-Za-z0-9_]+([-.][A-Za-z0-9_]+)*\.[A-Za-z0-9_]+([-.][A-Za-z0-9_]+)*&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;xs:minLength value=&amp;quot;6&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xs:maxLength value=&amp;quot;64&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;xs:simpleType name=&amp;quot;CountryCodeRestr&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xs:minLength value=&amp;quot;2&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xs:maxLength value=&amp;quot;3&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;Shop&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;Users&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
            &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
              &amp;lt;xs:element maxOccurs=&amp;quot;unbounded&amp;quot; name=&amp;quot;User&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Username&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:minLength value=&amp;quot;5&amp;quot;/&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;32&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Email&amp;quot; type=&amp;quot;ValidateEmail&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Description&amp;quot; &amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;10000&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Pictures&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:element maxOccurs=&amp;quot;unbounded&amp;quot; name=&amp;quot;Picture&amp;quot;&amp;gt;&lt;br /&gt;
                            &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                                &amp;lt;xs:element name=&amp;quot;Description&amp;quot;&amp;gt;&lt;br /&gt;
                                  &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                                    &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                                      &amp;lt;xs:maxLength value=&amp;quot;5000&amp;quot;/&amp;gt;&lt;br /&gt;
                                    &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                                  &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                                &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                                &amp;lt;xs:element name=&amp;quot;Tags&amp;quot;&amp;gt;&lt;br /&gt;
                                  &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                                    &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                                      &amp;lt;xs:element maxOccurs=&amp;quot;50&amp;quot; name=&amp;quot;Tag&amp;quot;&amp;gt;&lt;br /&gt;
                                        &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                                          &amp;lt;xs:simpleContent&amp;gt;&lt;br /&gt;
                                            &amp;lt;xs:extension base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                                              &amp;lt;xs:attribute name=&amp;quot;sortOrder&amp;quot; type=&amp;quot;xs:unsignedByte&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                                              &amp;lt;xs:attribute name=&amp;quot;visibleToAll&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                                            &amp;lt;/xs:extension&amp;gt;&lt;br /&gt;
                                          &amp;lt;/xs:simpleContent&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                                      &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                                    &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                                  &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                              &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:attribute name=&amp;quot;visible&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:attribute name=&amp;quot;favorite&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                            &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                          &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Tags&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:element maxOccurs=&amp;quot;50&amp;quot; name=&amp;quot;Tag&amp;quot; &amp;gt;&lt;br /&gt;
                            &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:simpleContent&amp;gt;&lt;br /&gt;
                                &amp;lt;xs:extension base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                                  &amp;lt;xs:attribute name=&amp;quot;sortOrder&amp;quot; type=&amp;quot;xs:unsignedByte&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xs:extension&amp;gt;&lt;br /&gt;
                              &amp;lt;/xs:simpleContent&amp;gt;&lt;br /&gt;
                            &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                          &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                  &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;registerDate&amp;quot; type=&amp;quot;xs:dateTime&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;disabled&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;birthDate&amp;quot; type=&amp;quot;xs:dateTime&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;countryCode&amp;quot; type=&amp;quot;CountryCodeRestr&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
              &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
            &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
          &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
        &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;Pictures&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
            &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
              &amp;lt;xs:element maxOccurs=&amp;quot;unbounded&amp;quot; name=&amp;quot;Picture&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Name&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:minLength value=&amp;quot;1&amp;quot;/&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;512&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;LocationUrl&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:minLength value=&amp;quot;1&amp;quot;/&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;5000&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                  &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;dateCompleted&amp;quot; type=&amp;quot;xs:dateTime&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;makerId&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;buyerId&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;optional&amp;quot; default=&amp;quot;0&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
              &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
            &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
          &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
        &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
&amp;lt;/xs:schema&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===XSLT(html)===&lt;br /&gt;
&#039;&#039;&#039;Tulemus:&#039;&#039;&#039; [http://enos.itcollege.ee/~tlanno/Csharp/Transformation.htm]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot; xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; xmlns:msxsl=&amp;quot;urn:schemas-microsoft-com:xslt&amp;quot; exclude-result-prefixes=&amp;quot;msxsl&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:output method=&amp;quot;html&amp;quot; indent=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
          &amp;lt;!-- Latest compiled and minified CSS --&amp;gt;&lt;br /&gt;
          &amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css&amp;quot; integrity=&amp;quot;sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7&amp;quot; crossorigin=&amp;quot;anonymous&amp;quot; /&amp;gt;&lt;br /&gt;
          &amp;lt;!-- Optional theme --&amp;gt;&lt;br /&gt;
          &amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css&amp;quot; integrity=&amp;quot;sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r&amp;quot; crossorigin=&amp;quot;anonymous&amp;quot; /&amp;gt;&lt;br /&gt;
          &amp;lt;!-- Latest compiled and minified JavaScript --&amp;gt;&lt;br /&gt;
          &amp;lt;script src=&amp;quot;https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js&amp;quot; integrity=&amp;quot;sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS&amp;quot; crossorigin=&amp;quot;anonymous&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;container&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;div class=&amp;quot;page-header&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;h2&amp;gt;Our users: &amp;lt;/h2&amp;gt;&lt;br /&gt;
            &amp;lt;/div&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:for-each select=&amp;quot;/Shop/Users/User&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;h3&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&amp;quot;Username&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:text&amp;gt; - &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
                &amp;lt;small&amp;gt;&amp;lt;xsl:value-of select=&amp;quot;Email&amp;quot;/&amp;gt;&amp;lt;/small&amp;gt;&lt;br /&gt;
              &amp;lt;/h3&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:for-each select=&amp;quot;Tags/Tag&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;span class=&amp;quot;label label-info&amp;quot;&amp;gt;&amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
              &amp;lt;br/&amp;gt;&lt;br /&gt;
              &amp;lt;table class=&amp;quot;table table-hover&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;thead&amp;gt;&lt;br /&gt;
                  &amp;lt;tr&amp;gt;&lt;br /&gt;
                    &amp;lt;th&amp;gt;Register date&amp;lt;/th&amp;gt;&lt;br /&gt;
                    &amp;lt;th&amp;gt;Birthday&amp;lt;/th&amp;gt;&lt;br /&gt;
                    &amp;lt;th&amp;gt;Country code&amp;lt;/th&amp;gt;&lt;br /&gt;
                  &amp;lt;/tr&amp;gt;&lt;br /&gt;
                &amp;lt;/thead&amp;gt;&lt;br /&gt;
                &amp;lt;tbody&amp;gt;&lt;br /&gt;
                  &amp;lt;tr&amp;gt;&lt;br /&gt;
                    &amp;lt;td&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:variable name=&amp;quot;dt&amp;quot; select=&amp;quot;@registerDate&amp;quot;/&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:value-of select=&amp;quot;concat(&lt;br /&gt;
                        substring($dt, 9, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 6, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 1, 4)&lt;br /&gt;
                        )&amp;quot;/&amp;gt;                      &lt;br /&gt;
                    &amp;lt;/td&amp;gt;&lt;br /&gt;
                    &amp;lt;td&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:variable name=&amp;quot;dt&amp;quot; select=&amp;quot;@birthDate&amp;quot;/&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:value-of select=&amp;quot;concat(&lt;br /&gt;
                        substring($dt, 9, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 6, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 1, 4)&lt;br /&gt;
                        )&amp;quot;/&amp;gt;&lt;br /&gt;
                    &amp;lt;/td&amp;gt;&lt;br /&gt;
                    &amp;lt;td&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:value-of select=&amp;quot;@countryCode&amp;quot;/&amp;gt;&lt;br /&gt;
                    &amp;lt;/td&amp;gt;&lt;br /&gt;
                  &amp;lt;/tr&amp;gt;&lt;br /&gt;
                &amp;lt;/tbody&amp;gt;&lt;br /&gt;
              &amp;lt;/table&amp;gt;&lt;br /&gt;
              &amp;lt;h4&amp;gt;User description:&amp;lt;/h4&amp;gt;&lt;br /&gt;
              &amp;lt;p align=&amp;quot;justify&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&amp;quot;Description&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;/p&amp;gt;&lt;br /&gt;
              &amp;lt;br/&amp;gt;&lt;br /&gt;
              &amp;lt;h4&amp;gt;User pictures:&amp;lt;/h4&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:for-each select=&amp;quot;Pictures/Picture&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:variable name=&amp;quot;picId&amp;quot; select=&amp;quot;@id&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:for-each select=&amp;quot;/Shop/Pictures/Picture&amp;quot;&amp;gt;           &lt;br /&gt;
                  &amp;lt;xsl:if test = &amp;quot;$picId = @id&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;b&amp;gt;&amp;lt;xsl:value-of select=&#039;Name&#039; /&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
                    &amp;lt;br/&amp;gt;&lt;br /&gt;
                    &amp;lt;img height=&amp;quot;50px&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:attribute name=&amp;quot;src&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsl:value-of select=&#039;LocationUrl&#039; /&amp;gt;&lt;br /&gt;
                      &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:attribute name=&amp;quot;alt&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsl:value-of select=&#039;Name&#039; /&amp;gt;&lt;br /&gt;
                      &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                    &amp;lt;/img&amp;gt;&lt;br /&gt;
                  &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
                &amp;lt;br/&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:for-each select=&amp;quot;Tags/Tag&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;span class=&amp;quot;label label-info&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/span&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
                &amp;lt;h5&amp;gt;Picture description:&amp;lt;/h5&amp;gt;&lt;br /&gt;
                &amp;lt;p align=&amp;quot;justify&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;xsl:value-of select=&amp;quot;Description&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/p&amp;gt;&lt;br /&gt;
                &amp;lt;br/&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
              &amp;lt;br/&amp;gt;&lt;br /&gt;
            &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
      &amp;lt;/html&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===XSLT(xml)===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot; xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; xmlns:msxsl=&amp;quot;urn:schemas-microsoft-com:xslt&amp;quot; exclude-result-prefixes=&amp;quot;msxsl&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:output method=&amp;quot;xml&amp;quot; indent=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Root&amp;gt;&lt;br /&gt;
        &amp;lt;AllUsers&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:for-each select=&amp;quot;/Shop/Users/User&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;User&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:attribute name=&amp;quot;id&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:value-of select=&#039;@id&#039; /&amp;gt;&lt;br /&gt;
            &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:value-of select=&amp;quot;Username&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;/User&amp;gt;&lt;br /&gt;
        &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
        &amp;lt;/AllUsers&amp;gt;&lt;br /&gt;
        &amp;lt;AllPictures&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:for-each select=&amp;quot;/Shop/Pictures/Picture&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;Picture&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:attribute name=&amp;quot;id&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&#039;@id&#039; /&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:choose&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:when test = &amp;quot;@buyerId != 0&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;xsl:attribute name=&amp;quot;IsSold&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;xsl:text&amp;gt;true&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
                  &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:when&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:otherwise&amp;gt;&lt;br /&gt;
                  &amp;lt;xsl:attribute name=&amp;quot;IsSold&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;xsl:text&amp;gt;false&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
                  &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:otherwise&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:choose&amp;gt;&lt;br /&gt;
              &amp;lt;Location&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&amp;quot;LocationUrl&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;/Location&amp;gt;&lt;br /&gt;
            &amp;lt;/Picture&amp;gt;&lt;br /&gt;
          &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
        &amp;lt;/AllPictures&amp;gt;&lt;br /&gt;
      &amp;lt;/Root&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Logi ==&lt;br /&gt;
===== 19.03.16 =====&lt;br /&gt;
* Tegime valmis XMLi, XSD ja XSLT-d&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== 07.03.16 =====&lt;br /&gt;
* Kerli käis õppejõud Käveriga rääkimas andmebaasi ülesehitusest. Andmebaas hakkab ilmet võtma.&lt;br /&gt;
* [[File:Lebokeiss pic3.jpg|200px|Andmebaasi struktuuri edasiehitus]][[File:Lebokeiss pic4.jpg|200px|Andmebaasi struktuuri edasiehitus]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== 01.03.16 =====&lt;br /&gt;
* Moodustasime tiimi. &lt;br /&gt;
* Hakkasime arutlema projekti andmebaasi ülesehituse üle.&lt;br /&gt;
* [[File:Lebokeiss pic1.jpg|200px|Esialgne andmebaasi struktuur]][[File:Lebokeiss pic2.jpg|200px|Grupifoto]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=102287</id>
		<title>Kodutöö aines &quot;Võrgurakendused II: hajussüsteemide ehitamine&quot; 2016</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016&amp;diff=102287"/>
		<updated>2016-03-27T21:03:52Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Meeskond &amp;quot;Lebokeiss OÜ Core 1.0&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Võrgurakendused II: hajussüsteemide ehitamine]]&lt;br /&gt;
&lt;br /&gt;
=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot; 2016=&lt;br /&gt;
==Eesmärk==&lt;br /&gt;
Saada praktiline kogemus hajussüsteemide ehitamisest XML(SOAP) või Rest veebiteenusel ja sellele klientrakenduse loomise abil ning süvendada meeskonnatööoskust. &lt;br /&gt;
*SOAP veebiteenuse puhul eeldatakse WCF tehnoloogia kasutamist. Vanema põlvkonna ASP.NET veebiteenuse loomine ei ole lubatud, kuna seda ei toeta ka Microsoft enam tänasel päeval.&lt;br /&gt;
*REST teenuste loomisel tuleks kasutada ASP.NET Web API võimalusi.&lt;br /&gt;
&lt;br /&gt;
Kaugem eesmärk on loomulikult hinne :).&lt;br /&gt;
&lt;br /&gt;
==Reeglid==&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendused (soovitavalt vähemalt kaks)endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
Ühte projektimeeskonda kuulub 3..4 tudengit ning ühel teemal teostab projekti üks või mitu meeskonda. 1,2 ja viie liikmelised meeskonnad tuleks õppejõuga eraldi kooskõlastada.&lt;br /&gt;
&lt;br /&gt;
Töö käiku kajastatakse  http://wiki.itcollege.ee keskkonnas. Wikilehe täitmise eesmärke on kaks: nii on võimalik kirja panna kõik mõtted ja ideed (ning nendest jääb jälg) ning õppejõul on hiljem võimalik saada ülevaade iga projektimeeskonna liikme panusest.&lt;br /&gt;
&lt;br /&gt;
==Tähtajad==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;XML fail&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#XML_andmefail NB! Täpsem info]&lt;br /&gt;
** XML fail, stiilifail ja skeemifail peavad olema valmis ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;20. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid XML-failide kohta peavad tehtud olema &#039;&#039;&#039;27. märts 2016&#039;&#039;&#039;.&lt;br /&gt;
** &#039;&#039;&#039;Meeskonnad on loonud omale enda wiki lehe, kuhu kirjeldavad meeskonna ja panevad nad üles oma tööd. Lisaks hakkavad kogunema ka sinna teiste gruppide poolt kirjutatavad retsensioonid. &amp;lt;ins&amp;gt;Meeskonnalehed lingitakse selle lehe lõppu Meeskonna pealkirja alla.&amp;lt;/ins&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Veebiteenus&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Veebiteenus NB! Täpsem info]&lt;br /&gt;
** Veebiteenuse analüüs peab olema valmis, esitatud ja wikilehel kirjeldatud hiljemalt: &#039;&#039;&#039;17.aprill 2016&#039;&#039;&#039;&lt;br /&gt;
** Veebiteenus peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid veebiteenuste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Veebiteenus tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Klientrakendused&#039;&#039;&#039; [https://wiki.itcollege.ee/index.php/Kodut%C3%B6%C3%B6_aines_%22V%C3%B5rgurakendused_II:_hajuss%C3%BCsteemide_ehitamine%22_2016#Klientrakendus NB! Täpsem info]&lt;br /&gt;
** Klientrakendused peavad olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt &#039;&#039;&#039;29. mai 2016&#039;&#039;&#039;.&lt;br /&gt;
** Retsensioonid klientrakenduste kohta peavad tehtud olema &#039;&#039;&#039;08. juuni 2016&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--** Klientrakendused tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--* &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne&#039;&#039;&#039;&lt;br /&gt;
** Meeskonnatöö kokkuvõttev aruanne peab olema valmis, esitatud ja ja wikilehel kirjeldatud hiljemalt 8.mai 2011&lt;br /&gt;
** Arvamused Meeskonnatöö kokkuvõtva aruande ja esitluse kohta tuleb esitada hiljemalt päev enne eksamit&lt;br /&gt;
** &#039;&#039;&#039;Meeskonna kokkuvõttev aruanne ja töö lõplik tulemus&#039;&#039;&#039; tuleb esitleda!--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Hindamine==&lt;br /&gt;
===Üldised kriteeriumid===&lt;br /&gt;
&lt;br /&gt;
Teostatuks loetakse projekt juhul, kui lähteülesanne on realiseeritud, lahendus on töötav, kuid esineb suuremaid vigu ning piirsituatsioonidega ei ole arvestatud.&lt;br /&gt;
&lt;br /&gt;
Maksimumtulemuse saavutamiseks peab projekt olema teostatud tehniliselt veatult ning varustatud dokumentatsiooniga, milles sisaldub  arendusprotsessi kirjeldus (peab selguma ka iga rühmaliikme panus projekti teostamisel), kasutajajuhend ning lahenduse kirjeldus. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Maksimumtulemuse annab (vähemalt 4/6):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Majanduslik mõtlemine (kas loodav teenus ja rakendused oleks kasutatav ka ärilistel eesmärkidel)&lt;br /&gt;
* Mobiilrakendused &lt;br /&gt;
* AngularJS klientrakendus&lt;br /&gt;
* Kogukondade kaasamine&lt;br /&gt;
* Kasutajamugavus&lt;br /&gt;
* Läbimõeldud töökorraldus&lt;br /&gt;
* Lisavõimaluste realiseerimine (vt näidisteemad)&lt;br /&gt;
&lt;br /&gt;
===XML andmefail===&lt;br /&gt;
Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks, selle XML faili skeemifail ning minimaalselt kaks sobivat XSL transformatsiooni faili loodud XML failis olevate andmete transformeerimiseks HTML formaati ja XML faili formaadi muutmiseks. Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kasutama vajadusel parameetreid ning kindlasti ka erinevaid tingimuste kontrolle.&lt;br /&gt;
&lt;br /&gt;
XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
 &amp;lt;dim1&amp;gt;&lt;br /&gt;
   &amp;lt;dim2&amp;gt;&lt;br /&gt;
     &amp;lt;dim3&amp;gt;&lt;br /&gt;
       &amp;lt;dim4&amp;gt;&lt;br /&gt;
       &amp;lt;/dim4&amp;gt;&lt;br /&gt;
     &amp;lt;/dim3&amp;gt;&lt;br /&gt;
   &amp;lt;/dim2&amp;gt;&lt;br /&gt;
 &amp;lt;/dim1&amp;gt;&lt;br /&gt;
Lisaks tuleb kasutada 3-el dimensioonil attribuute, mis one enamat, kui lihtsalt ID.&lt;br /&gt;
&lt;br /&gt;
Käesoleva ülesande käigus peab looma meeskonna ning selle wiki lehekülje&lt;br /&gt;
&lt;br /&gt;
===Veebiteenus===&lt;br /&gt;
Loodav veebiteenus peab võimaldama:&lt;br /&gt;
* Teenuse pakkumist&lt;br /&gt;
* &#039;&#039;&#039;Teenuse kasutajate tuvastamist ning haldamist&#039;&#039;&#039;&lt;br /&gt;
* Teenuse kasutajate ja kasutusstatistika üle arve pidamist kasutajate lõikes&lt;br /&gt;
* Teenuse poole pöördumiste arvu piiramist ja piirangute haldamist.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus peab toetama mitme kasutaja võimalust.&lt;br /&gt;
&lt;br /&gt;
Loodav veebiteenus tuleb luua kasutades &#039;&#039;Windows Communication Foundation&#039;&#039; või ASP.NET MVC  Web API tehnoloogiat&lt;br /&gt;
&lt;br /&gt;
Andmebaasis peab olema vähemalt 9 olemit ehk andmebaas on eeldus,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Soovitav on luua teenus (FE) ja teenuse seadistamiseks ning kasutajate haldamiseks mõeldud rakendus (BE).&lt;br /&gt;
&lt;br /&gt;
===Klientrakendus===&lt;br /&gt;
Klientrakendus mõnele olemasolevale veebiteenusele, võib olla teostatud veebirakendusena, Silverlight, WPF või vormirakendusena.&lt;br /&gt;
&lt;br /&gt;
Variant1: teha klientrakendus enda loodud veebiteenusele &lt;br /&gt;
&lt;br /&gt;
Variant2: teha klientrakendus mõnele levinud veebiteenusele.&lt;br /&gt;
Näiteks: &lt;br /&gt;
* http://www.bing.com/developer&lt;br /&gt;
* http://www.flickr.com/services/api/response.soap.html&lt;br /&gt;
* http://developer.ebay.com/developercenter/windows/&lt;br /&gt;
* http://apiwiki.twitter.com/Getting-Started&lt;br /&gt;
&lt;br /&gt;
===Retsensioonid===&lt;br /&gt;
Retsensioon on üliõpilase iseseisva teadustöö kriitilise analüüsi põhjal koostatud argumenteeritud hinnang. Retsensioonis tuleb hinnata töö vastavust esitatud tingimustele, programmikoodi loetavust ning kommenteeritust, dokumentatsiooni ja kirjeldada puudusi. Retsensioonide põhjal on meeskondadel õigus oma projekte parandada enne määratud esitamistähtaja kättejõudmist.&lt;br /&gt;
&lt;br /&gt;
Retsensioon peab sisaldama minimaalselt...&lt;br /&gt;
* XML - ...200 sõna.&lt;br /&gt;
* Veebiteenus - ...600 sõna.&lt;br /&gt;
* Klientrakendus - ...600 sõna.&lt;br /&gt;
&lt;br /&gt;
Mõnelauselisest arvamusest ei piisa, kuna tegemist on grupi loodavate arvustustega, mitte individuaalsete arvustustega.&lt;br /&gt;
&lt;br /&gt;
==Konsultatsioonid==&lt;br /&gt;
 Igal projektimeeskonnal on piiramatu õigus saada õppejõu käest konsultatsiooni ja juhendamist oma&lt;br /&gt;
 töö tegemiseks, kas harjutuste ajal või pärast harjutusi ja loenguid. Eriaegade suhtes saab sõlmida&lt;br /&gt;
 õppejõuga kokkuleppeid kontaktidel&lt;br /&gt;
 mait.poska [ät] itcollege.ee või (+372 53 469 734)&lt;br /&gt;
 (teksti originaalautor Priit Raspel)&lt;br /&gt;
&lt;br /&gt;
=Teemad 2016 kevad=&lt;br /&gt;
&#039;&#039;&#039; Kodutöö koosneb kolmest eraldiseisvast ülesandest:&#039;&#039;&#039;&lt;br /&gt;
* Luua XML fail vabalt valitud andmete edastamiseks,selle faili skeemifail ning XSL fail(id) erinevate transformatsioonide tarvis (soovitavalt vähemalt andmete HTML ja XML kujul kuvamiseks)&lt;br /&gt;
* Luua veebiteenus, mis võimaldaks pakkuda teenust, eristada kasutajaid ning näidata teenuse kasutamise statistikat kasutajate ja tegevuste lõikes&lt;br /&gt;
* Luua klientrakendus mõnele olemasolevale või endaloodud veebiteenusele&lt;br /&gt;
&lt;br /&gt;
NB! XML andmefail ja veebiteenus ei pea olema omavahel seotud.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Näidisteemad==&lt;br /&gt;
&lt;br /&gt;
===Nimede pakkumise teenus===&lt;br /&gt;
Mõte selles, et luua nimede baas, mille abil pakkuda rakenduse loojale sobiva algusega nimesid. Reaalne rakendus: &#039;&#039;autocompleter&#039;&#039; tarvis teenuse pakkumine&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua sobiva alguse järgi nimede pakkumise teenus:&lt;br /&gt;
* alates kahetähelisetest algustest pakkuda sobivad nimesid&lt;br /&gt;
* luua võimalus kasutajatel nimesid lisada&lt;br /&gt;
* luua võimalus administraatoril nimesid muuta/kustutada&lt;br /&gt;
* meeste ja naiste nimed peavad olema süsteemis eristatavad&lt;br /&gt;
* luua võimalus, mis võimaldab kuvada populaarseid nimesid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* luua võimalus, et nimi lisatakse baasi alles siis, kui administraatori õigustega inimene on selleks vastava loa andnud&lt;br /&gt;
&lt;br /&gt;
===Külastusstatistika teenus===&lt;br /&gt;
Mõte selles, et pakkuda teenust, kus kasutajal on võimalik registreerida külastused ning küsida oma külastusstatistikat.&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua külastusstatistika teenus:&lt;br /&gt;
* kasutaja saab teenuses registreerida külastusi&lt;br /&gt;
* kasutaja saab küsida külastusstatistikat päevade/kuude/kogu perioodi lõikes&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
&lt;br /&gt;
Lisavõimalused:&lt;br /&gt;
* luua võimalus registreerida alamlehtede külastusstatistikat&lt;br /&gt;
* luua võimalus külastusstatistikale lisaparameetrite lisamiseks (ip aadress, sirviku versioon jne)&lt;br /&gt;
&lt;br /&gt;
===Telefoniraamatu teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada kontakte ja nende seast otsida&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua telefoniraamatu teenus:&lt;br /&gt;
* kasutaja saab teenuses kontakte lisada ja kustutada&lt;br /&gt;
* kasutaja saab kontaktide nime/telefoninumbri jne abil otsida&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutajaid on võimalik lisada gruppidesse&lt;br /&gt;
* kasutajal on võimalik lisada vajalike kontaktandmete liike&lt;br /&gt;
* kasutajatel on võimalik jagada omavahel kontakte ja kontaktide grupper&lt;br /&gt;
&lt;br /&gt;
===RSS voogude kogumise ja uudiste kuvamise teenus===&lt;br /&gt;
Mõte selles, et kasutaja saab teenuse abil salvestada talle huvipakkuvaid RSS vooge ja nendelt voogudelt uudiseid lugeda&lt;br /&gt;
&lt;br /&gt;
====Ülesanne====&lt;br /&gt;
Luua RSS voogude haldusteenus:&lt;br /&gt;
* kasutaja saab teenuses RSS vooge lisada ja kustudada&lt;br /&gt;
* kasutaja saab pärida talle huvipakkuvate voogude viimaseid uudiseid&lt;br /&gt;
* luua võimalus ühele kasutajale (või erinevatele kasutajagruppidele) maksimumpäringute hulga määramiseks&lt;br /&gt;
* kasutaja saab RSS vooge vaadata eraldi või grupeeritult&lt;br /&gt;
* vooge peab puhverdama, kuna voogude lugemine võtab enamasti üsna palju aega &lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
= Meeskonnad 2016=&lt;br /&gt;
&lt;br /&gt;
==Päevaõpe==&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Travo 2.0 ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tarvo Reinpalu&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond: Travo 2.0]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Aloha Snackbar&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Egert Aia&lt;br /&gt;
* Merit Ridaste&lt;br /&gt;
* Ants-Kristjan Rooma&lt;br /&gt;
* Siim Ivask&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Aloha Snackbar]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Kõnõtraat ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kristjan Tõnismäe&lt;br /&gt;
* Andreas Plado&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Kõnõtraat]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Lebokeiss OÜ Core 1.0&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
Meeskonna koduleht: [[Lebokeiss OÜ]].&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Meeskond:_Travo_2.0 Travo 2.0] asub [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;LuckyYou&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tanel Vähk&lt;br /&gt;
* Aleks Luik&lt;br /&gt;
* Melissa Eenmaa&lt;br /&gt;
* Taavi Kliss&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LuckyYou]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond SHOP ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Johannes Tamm&lt;br /&gt;
* Martin Mägi&lt;br /&gt;
* Martin Betlem&lt;br /&gt;
* Merilyn Renser&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[SHOP]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/BurgerAce BurgerAce] asub [https://wiki.itcollege.ee/index.php/Talk:BurgerAce#SHOPi_retsensioon_meeskonnale_BurgerAce siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond BurgerAce ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Silver Ohlo&lt;br /&gt;
* Martin Luik&lt;br /&gt;
* Ahto Elken&lt;br /&gt;
* Arvo Bendi&lt;br /&gt;
Meeskonna koduleht: [[BurgerAce]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Netgroup Netgroup] asub [https://wiki.itcollege.ee/index.php/Talk:Netgroup siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Ordering Ordering] asub [https://wiki.itcollege.ee/index.php/Talk:Ordering siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond LinkCode ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Rene Ott&lt;br /&gt;
* Renet Pirso&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[LinkCode]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Screaming_Magic_Gnomes Screaming Magic Gnomes] asub [https://wiki.itcollege.ee/index.php/Talk:Screaming_Magic_Gnomes#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&amp;lt;br/&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/DoubleTrouble Double Trouble] asub [https://wiki.itcollege.ee/index.php/Talk:DoubleTrouble#Retsensioon_LinkCode_meeskonna_poolt siin lingil]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Screaming Magic Gnomes ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Märt Häkkinen&lt;br /&gt;
* Taavi Kivimaa&lt;br /&gt;
* Siim Osa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Screaming_Magic_Gnomes]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar#Retsensioon_XML Aloha Snackbar]&lt;br /&gt;
&lt;br /&gt;
retsensioon meeskonnale Ordering [https://wiki.itcollege.ee/index.php/Talk:Ordering]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond Givela ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikk Raudsepp&lt;br /&gt;
* Alar Ameerikas&lt;br /&gt;
* Vladimir Rõkovanov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Givela]]&lt;br /&gt;
&lt;br /&gt;
XML Retsensioon meeskonnale [[Kõnõtraat]] asub [https://wiki.itcollege.ee/index.php/Talk:K%C3%B5n%C3%B5traat siin ]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VVA ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleksandr Babõkin&lt;br /&gt;
* Vladislav Kovaltšuk&lt;br /&gt;
* Andrei Tverskoi&lt;br /&gt;
* Vladislav Lahtarin&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VVA]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon XML-failide kohta meeskonnale &amp;quot;Givela&amp;quot; [https://wiki.itcollege.ee/index.php/VVA#Retsensioon_XML-failide_kohta_meeskonnale_.22Givela.22 siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Undress Gaver&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Marko Koiduste&lt;br /&gt;
* Jaanus Türnpuu&lt;br /&gt;
* Sergei Fatejev&lt;br /&gt;
* Kaspar Tilk&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Undress Gaver]] &amp;lt;br /&amp;gt;&lt;br /&gt;
Retsensioon meeskonnale [https://wiki.itcollege.ee/index.php/Ordering Ordering] asub [https://wiki.itcollege.ee/index.php/Talk:Ordering#Retsensioon_meeskonna_Undress_G.C3.A4ver_poolt siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Double Trouble&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kaido Henrik Elias&lt;br /&gt;
* Jekaterina Jakimets&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[DoubleTrouble]]&lt;br /&gt;
&lt;br /&gt;
XML retsensioon meeskonnale VRJ [https://wiki.itcollege.ee/index.php/Talk:VRJ asub siin]&amp;lt;br/&amp;gt;&lt;br /&gt;
XML retsensioon meeskonnale Givela [https://wiki.itcollege.ee/index.php/Talk:Givela asub siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Team ATW&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Aleks Tatter&lt;br /&gt;
* Vaiko Vällik&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Team_ATW]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Netgroup&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Indrek Nurja&lt;br /&gt;
* Imre Teras&lt;br /&gt;
* Kristjan Kotto&lt;br /&gt;
* Marek Kivikink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Netgroup]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Ordering&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Kelli Lukas&lt;br /&gt;
* Märt Lõhmus&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Ordering]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond KTM Development ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Tauno Otti&lt;br /&gt;
* Mart Abel&lt;br /&gt;
* Kristian Laupa&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[KTMdev]]&lt;br /&gt;
&lt;br /&gt;
==Kaugõpe==&lt;br /&gt;
=== Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mikhail Reznichenko&lt;br /&gt;
* 10143193&lt;br /&gt;
* 10090107&lt;br /&gt;
* Alisa Dudinova&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioonid meeskonnale [https://wiki.itcollege.ee/index.php/Talk:VRJ &amp;quot;VRJ&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Vrii-team &amp;quot;Vrii-team&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond VRii Team ===&lt;br /&gt;
&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Mets&lt;br /&gt;
* Toomas Juhkov&lt;br /&gt;
* Tiit Kuuskmäe&lt;br /&gt;
* Kaire Toom&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Vrii-team]]&lt;br /&gt;
&lt;br /&gt;
XML: [http://enos.itcollege.ee/~amets/VR2/XML/xml-resources.zip] XML olemas ka meeskonna kodulehel.&lt;br /&gt;
&lt;br /&gt;
Retsensioonid XML ülesandele: [https://wiki.itcollege.ee/index.php/Talk:Meeskond_%22Symphony_No._7_in_C-sharp_minor%22 Meeskond &amp;quot;Symphony No. 7 in C-sharp minor&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Talk:Sille Sille].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;VRJ&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jevgeni Gavrilov&lt;br /&gt;
* Vladimir Nitsenko&lt;br /&gt;
* Riho Uusjärv&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[VRJ]]&lt;br /&gt;
&lt;br /&gt;
Meeskond [https://wiki.itcollege.ee/index.php/Aeg&amp;quot;Aeg&amp;quot;] ja [https://wiki.itcollege.ee/index.php/Enneaegsed&amp;quot;Enneaegsed&amp;quot;] retsentsioonid asuvad [https://wiki.itcollege.ee/index.php/VRJ#Retsensioon &amp;quot;siin&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;freeVariable&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Mihkel Viilveer&lt;br /&gt;
* Kristjan Adrat&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
* &amp;lt;sinu_nimi&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[freeVar]]&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[Aeg]] XML retsensioon [https://wiki.itcollege.ee/index.php/FreeVar#Retsensioon_1 asub siin]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond &amp;quot;Enneaegsed&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Jaan Elken&lt;br /&gt;
* Margit Ool&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht: [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
XML ülesande retsensioon meeskonnale Travo 2.0 [https://wiki.itcollege.ee/index.php/Talk:Meeskond:_Travo_2.0 asub siin].&lt;br /&gt;
XML ülesande retsensioon meeskonnale Aloha Snackbar [https://wiki.itcollege.ee/index.php/Talk:Aloha_Snackbar asub siin].&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Skeddl&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Karina Egipt&lt;br /&gt;
* Kärt Palm&lt;br /&gt;
* Joonatan Uusväli&lt;br /&gt;
* Siim Veskilt&lt;br /&gt;
* Aleksei Suvorov&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Skeddl]]&lt;br /&gt;
&lt;br /&gt;
19.03.2016 XML/XSLT ülesande leiab [http://enos.itcollege.ee/~ktoomel/VRII/VRIIAssignment.zip SIIT].&lt;br /&gt;
&lt;br /&gt;
26.03.2016 Meeskonna [[Aeg]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_1_retsensioon SIIT]&lt;br /&gt;
&lt;br /&gt;
26.03.2016 Meeskonna [[Enneaegsed]] XML retsensioon leiab [https://wiki.itcollege.ee/index.php/Skeddl#XML_retsensioon_2 SIIT]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Sille&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Andres Trei&lt;br /&gt;
* Lasse Kolkanen&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Sille]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Meeskonna [[VRJ]] XML retsensioon asub : [https://wiki.itcollege.ee/index.php/Sille#XML_retsensioon SIIN]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;A$unik&amp;quot; ===&lt;br /&gt;
Liikmed:&lt;br /&gt;
* Hardi Antsov&lt;br /&gt;
* Juhan Trink&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[A$unik]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Yksikyritus&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Kaidi Parman&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Yksikyritus]]&lt;br /&gt;
&lt;br /&gt;
=== Meeskond: &amp;quot;Aeg&amp;quot; ===&lt;br /&gt;
Liige:&lt;br /&gt;
* Maksim Gorb&lt;br /&gt;
&lt;br /&gt;
Meeskonna koduleht : [[Aeg]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Talk:Meeskond:_Travo_2.0&amp;diff=102286</id>
		<title>Talk:Meeskond: Travo 2.0</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Talk:Meeskond:_Travo_2.0&amp;diff=102286"/>
		<updated>2016-03-27T21:01:33Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Retsensioon */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Retsensioon XML ülesande kohta=&lt;br /&gt;
&lt;br /&gt;
Meeskond Travo 2.0 on loonud ühe XML faili, mis sisaldab andmeid klasside, õpilaste ja kursuste kohta; selle XML faili skeemifaili ja ühe XSL transformatsiooni faili.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Antud kodutöö käigus on täidetud järgmised nõuded&#039;&#039;&#039;:&lt;br /&gt;
*Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks ja selle XML faili skeemifail.&lt;br /&gt;
*XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutöö käigus on osad nõuded ainult osaliselt täidetud&#039;&#039;&#039;:&lt;br /&gt;
*Tuleb esitada minimaalselt kaks sobivat XSL transformatsiooni faili. Meeskond Travo 2.0 on esitanud ainult ühe transformatsiooni faili. Samas luuakse selle faili abil 3 erinevat tabelit ja sisuliselt saaks ühe faili kolmeks jagada. &lt;br /&gt;
*Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kindlasti kasutama ka erinevaid tingimuste kontrolle. XSLT fail sisaldas mitut for-each klauslit, lisaks oli neid kasutatud ka üksteise sees. Samas ei ole kasutatud ühtegi if klauslit, tingimuse kontrolliks saab tinglikult lugeda vaid id-de kokku viimist õigete väärtustega.&lt;br /&gt;
*3-el dimensioonil tuleb kasutada atribuute, mis on enamat, kui lihtsalt ID. Antud XML failis on ID-st erinevad atribuudid olemas vaid ühel elemendil: Student.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lisaks sellele, et osa kodutöö nõudeid ei ole täielikult täidetud, on antud kodutöö puhul järgmised puudused&#039;&#039;&#039;:&lt;br /&gt;
*Loodud XML fail ei vasta esitatud XSD failile. XSD failis on elemendi „Course“ lapselemendi „Name“ väärtuse maksimaalseks pikkuseks märgitud 32 tähemärki, samas on XML failis üks selline element, mis ületab selle piiri: element, mille väärtus on „Võrgurakendused 2: XML-i algkursus C# baasil“.&lt;br /&gt;
*Jääb segaseks, miks tudengite sünnipäevad on esitatud millisekundi täpsusega.&lt;br /&gt;
*Klasside andmete esitamisel oleks võinud kasutada elementide nimesid, mis oleks rohkem seotud sellega, mida need andmed esitavad. Jäi segaseks, milliste andmetega täpselt tegu oli. Kas klassiruumide või õpirühmadega?&lt;br /&gt;
*Oleks võinud rohkem erinevaid elemendinimesid kasutada, seeläbi oleks andmestruktuur selgem olnud. Näiteks ühe Group elemendi sees oleva teise Group elemendinimi oleks võinud olla hoopis Subgroup. Samuti oleks Studenti sees oleva Name elemendinimi olla StudentName, et see ei läheks segamini Course elemendi sees oleva Name-ga.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Positiivsena võiks välja tuua järgmised asjaolud&#039;&#039;&#039;:&lt;br /&gt;
*Antud meeskond sisaldab ainult ühte liiget, mistõttu on mõistetav nõuete osaline täitmine.&lt;br /&gt;
*Hoolimata eespool välja toodud paarist puudusest, on üldiselt XML failis elemendinimed hästi valitud. On selgelt arusaadav, milliste andmetega on tegu. Lisaks on kõik nimed ühetaoliselt suure algustähega.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Retsenseeris meeskond [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Retsensioon=&lt;br /&gt;
&lt;br /&gt;
Meeskond Travo 2.0 on loonud XML faili andmete edastamiseks, selle XML faili skeemifaili ning XSL transformatsiooni faili. Töö teemaks on kool: klassid, õpilased ning kursused. &lt;br /&gt;
&lt;br /&gt;
Tööd tehes on tähele pandud, et tagid on tõstutundlikud ning lõpetatud. Kood on töökorras ja lihtsasti jälgitav, (hästi disainitud). Elemendid on ühtselt ingliskeelsed, kuid meeskond on arvestanud kõigega: kommentaarides on ära märgitud ka eestikeelsed vasted. Ka elemendinimed vastavad reeglitele (pole ühtegi tühikut või numbrit) ning elemendid on kenasti grupeeritud kasutades alamgruppe ja id&#039;sid (Groups -&amp;gt; Group (1, 2, 3); Students -&amp;gt; Student (1, 2, 3) jne). Samas, kui skeemifailis (XSD) on kasutatud paljusid erinevaid atribuute, siis XMLis jääb neid veidi puudu (kasutusel on vaid id ja elemendis Students veel birthDate). Transformatsiooni failis võiks samuti olla veidi enam kui for-each klausel ja value-of (tingimuste kontrolle jms). Transformatsiooni faile on ülesandes ette nähtud kahe asemel üks, kuid selle eest on failis tervelt kolm tabelit ning positiivne on, et XML failis on olemas 4 dimensiooni, nagu ülesandes kirjas oli.&lt;br /&gt;
&lt;br /&gt;
Üldiselt arvab meie meeskond, et tehtud töö on kena ja konkreetne. Enam-vähem kõik ülesande punktid on hästi täidetud ning puudujääke ei panegi peaaegu tähele. Meeskond Travo 2.0 on ilmselgelt astunud sammu edasi ning tulevikus ootame vaid suuri tegusid! 2k16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Retsenseeris meeskond [https://wiki.itcollege.ee/index.php/Lebokeiss_O%C3%9C Lebokeiss OÜ].&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Talk:Meeskond:_Travo_2.0&amp;diff=102285</id>
		<title>Talk:Meeskond: Travo 2.0</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Talk:Meeskond:_Travo_2.0&amp;diff=102285"/>
		<updated>2016-03-27T20:55:46Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Retsensioon XML ülesande kohta */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Retsensioon XML ülesande kohta=&lt;br /&gt;
&lt;br /&gt;
Meeskond Travo 2.0 on loonud ühe XML faili, mis sisaldab andmeid klasside, õpilaste ja kursuste kohta; selle XML faili skeemifaili ja ühe XSL transformatsiooni faili.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Antud kodutöö käigus on täidetud järgmised nõuded&#039;&#039;&#039;:&lt;br /&gt;
*Ülesande täitmiseks tuleb luua XML fail andmete edastamiseks ja selle XML faili skeemifail.&lt;br /&gt;
*XML-il peab olema vähemalt 4 loogilist dimensiooni.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kodutöö käigus on osad nõuded ainult osaliselt täidetud&#039;&#039;&#039;:&lt;br /&gt;
*Tuleb esitada minimaalselt kaks sobivat XSL transformatsiooni faili. Meeskond Travo 2.0 on esitanud ainult ühe transformatsiooni faili. Samas luuakse selle faili abil 3 erinevat tabelit ja sisuliselt saaks ühe faili kolmeks jagada. &lt;br /&gt;
*Transformatsioonid peavad sisaldama midagi enamat, kui ainult üks for-each klausel. Transformatsiooni käigus peaks kindlasti kasutama ka erinevaid tingimuste kontrolle. XSLT fail sisaldas mitut for-each klauslit, lisaks oli neid kasutatud ka üksteise sees. Samas ei ole kasutatud ühtegi if klauslit, tingimuse kontrolliks saab tinglikult lugeda vaid id-de kokku viimist õigete väärtustega.&lt;br /&gt;
*3-el dimensioonil tuleb kasutada atribuute, mis on enamat, kui lihtsalt ID. Antud XML failis on ID-st erinevad atribuudid olemas vaid ühel elemendil: Student.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Lisaks sellele, et osa kodutöö nõudeid ei ole täielikult täidetud, on antud kodutöö puhul järgmised puudused&#039;&#039;&#039;:&lt;br /&gt;
*Loodud XML fail ei vasta esitatud XSD failile. XSD failis on elemendi „Course“ lapselemendi „Name“ väärtuse maksimaalseks pikkuseks märgitud 32 tähemärki, samas on XML failis üks selline element, mis ületab selle piiri: element, mille väärtus on „Võrgurakendused 2: XML-i algkursus C# baasil“.&lt;br /&gt;
*Jääb segaseks, miks tudengite sünnipäevad on esitatud millisekundi täpsusega.&lt;br /&gt;
*Klasside andmete esitamisel oleks võinud kasutada elementide nimesid, mis oleks rohkem seotud sellega, mida need andmed esitavad. Jäi segaseks, milliste andmetega täpselt tegu oli. Kas klassiruumide või õpirühmadega?&lt;br /&gt;
*Oleks võinud rohkem erinevaid elemendinimesid kasutada, seeläbi oleks andmestruktuur selgem olnud. Näiteks ühe Group elemendi sees oleva teise Group elemendinimi oleks võinud olla hoopis Subgroup. Samuti oleks Studenti sees oleva Name elemendinimi olla StudentName, et see ei läheks segamini Course elemendi sees oleva Name-ga.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Positiivsena võiks välja tuua järgmised asjaolud&#039;&#039;&#039;:&lt;br /&gt;
*Antud meeskond sisaldab ainult ühte liiget, mistõttu on mõistetav nõuete osaline täitmine.&lt;br /&gt;
*Hoolimata eespool välja toodud paarist puudusest, on üldiselt XML failis elemendinimed hästi valitud. On selgelt arusaadav, milliste andmetega on tegu. Lisaks on kõik nimed ühetaoliselt suure algustähega.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Retsenseeris meeskond [[Enneaegsed]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Retsensioon=&lt;br /&gt;
&lt;br /&gt;
Meeskond Travo 2.0 on loonud XML faili andmete edastamiseks, selle XML faili skeemifaili ning XSL transformatsiooni faili. Töö teemaks on kool: klassid, õpilased ning kursused. &lt;br /&gt;
&lt;br /&gt;
Tööd tehes on tähele pandud, et tagid on tõstutundlikud ning lõpetatud. Kood on töökorras ja lihtsasti jälgitav, (hästi disainitud). Elemendid on ühtselt ingliskeelsed, kuid meeskond on arvestanud kõigega: kommentaarides on ära märgitud ka eestikeelsed vasted. Ka elemendinimed vastavad reeglitele (pole ühtegi tühikut või numbrit) ning elemendid on kenasti grupeeritud kasutades alamgruppe ja id&#039;sid (Groups -&amp;gt; Group (1, 2, 3); Students -&amp;gt; Student (1, 2, 3) jne). Samas, kui skeemifailis (XSD) on kasutatud paljusid erinevaid atribuute, siis XMLis jääb neid veidi puudu (kasutusel on vaid id ja elemendis Students veel birthDate). Transformatsiooni failis võiks samuti olla veidi enam kui for-each klausel ja value-of (tingimuste kontrolle jms). Transformatsiooni faile on ülesandes ette nähtud kahe asemel üks, kuid selle eest on failis tervelt kolm tabelit ning positiivne on, et XML failis on olemas 4 dimensiooni, nagu ülesandes kirjas oli.&lt;br /&gt;
&lt;br /&gt;
Üldiselt arvab meie meeskond, et tehtud töö on kena ja konkreetne. Enam-vähem kõik ülesande punktid on hästi täidetud ning puudujääke ei panegi peaaegu tähele. Meeskond Travo 2.0 on ilmselgelt astunud sammu edasi ning tulevikus ootame vaid suuri tegusid! 2k16&lt;br /&gt;
&lt;br /&gt;
Retsenseeris meeskond Lebokeiss OÜ.&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Lebokeiss_O%C3%9C&amp;diff=102279</id>
		<title>Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Lebokeiss_O%C3%9C&amp;diff=102279"/>
		<updated>2016-03-27T20:22:42Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot; */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Kodutöö aines &amp;quot;Võrgurakendused II: hajussüsteemide ehitamine&amp;quot;=&lt;br /&gt;
&lt;br /&gt;
==Meeskond==&lt;br /&gt;
* Joonas Jõeleht - Projektijuht&lt;br /&gt;
* Karell Veskimeister &lt;br /&gt;
* Kerli Edasi&lt;br /&gt;
* Iris Tambaum&lt;br /&gt;
* Timo Lanno&lt;br /&gt;
&lt;br /&gt;
== Idee ==&lt;br /&gt;
==Kasutatav .NET tehnoloogia==&lt;br /&gt;
==Analüüs==&lt;br /&gt;
==Rakenduse sisu==&lt;br /&gt;
&#039;&#039;&#039;Rakenduses on olemas järgmised võimalused (Must have):&#039;&#039;&#039;  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Rakenduses võiksid olla lisavõimalused (Should have):&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==XML/XSD/XSLT==&lt;br /&gt;
&lt;br /&gt;
===XML===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; standalone=&amp;quot;yes&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;Shop&amp;gt;&lt;br /&gt;
  &amp;lt;Users&amp;gt;&lt;br /&gt;
    &amp;lt;User id=&amp;quot;9999999&amp;quot; registerDate=&amp;quot;2005-01-01T08:05:07&amp;quot; disabled=&amp;quot;false&amp;quot; birthDate=&amp;quot;1950-03-09T16:05:07.123&amp;quot; countryCode=&amp;quot;EE&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Username&amp;gt;&amp;lt;![CDATA[Praam]]&amp;gt;&amp;lt;/Username&amp;gt;&lt;br /&gt;
      &amp;lt;Email&amp;gt;&amp;lt;![CDATA[praam22@praam.ee]]&amp;gt;&amp;lt;/Email&amp;gt;&lt;br /&gt;
      &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
      &amp;lt;Pictures&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;7&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Landscape]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[#lit]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Perfectionist]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;777&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Butterflies]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;888&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Funny]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Hilarious]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
      &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
      &amp;lt;Tags&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;![CDATA[Realistic]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
      &amp;lt;/Tags&amp;gt;&lt;br /&gt;
    &amp;lt;/User&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;User id=&amp;quot;001&amp;quot; registerDate=&amp;quot;2002-02-09T09:21:11&amp;quot; disabled=&amp;quot;false&amp;quot; birthDate=&amp;quot;2002-02-09T09:21:11.321&amp;quot; countryCode=&amp;quot;EE&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Username&amp;gt;&amp;lt;![CDATA[Karell]]&amp;gt;&amp;lt;/Username&amp;gt;&lt;br /&gt;
      &amp;lt;Email&amp;gt;&amp;lt;![CDATA[vutlar@ee.ee]]&amp;gt;&amp;lt;/Email&amp;gt;&lt;br /&gt;
      &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Karells desc]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
      &amp;lt;Pictures&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;880&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[This is my 4th attempt at creating anime zoomout by using photo of geographical a location]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt; &amp;lt;![CDATA[Nature]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;4&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Geography]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Photography]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;5&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Tracing]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;280&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Guide photo how i trace photos]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Photography]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Tracing]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
      &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
      &amp;lt;Tags&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot;&amp;gt;&amp;lt;![CDATA[Tracing]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
      &amp;lt;/Tags&amp;gt;&lt;br /&gt;
    &amp;lt;/User&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
    &amp;lt;User id=&amp;quot;3&amp;quot; registerDate=&amp;quot;2016-03-09T16:05:07&amp;quot; disabled=&amp;quot;false&amp;quot; birthDate=&amp;quot;1996-03-09T16:05:07.123&amp;quot; countryCode=&amp;quot;EE&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Username&amp;gt;&amp;lt;![CDATA[ParanoidZebra]]&amp;gt;&amp;lt;/Username&amp;gt;&lt;br /&gt;
      &amp;lt;Email&amp;gt;&amp;lt;![CDATA[ParanoidZebra@zebra.zoo]]&amp;gt;&amp;lt;/Email&amp;gt;&lt;br /&gt;
      &amp;lt;Description&amp;gt;&amp;lt;![CDATA[Hello world]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
      &amp;lt;Pictures&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;31&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Zebra]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Sun]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;32&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;31&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Zebra]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
        &amp;lt;Picture id=&amp;quot;33&amp;quot; visible=&amp;quot;true&amp;quot; favorite=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;Description&amp;gt;&amp;lt;![CDATA[]]&amp;gt;&amp;lt;/Description&amp;gt;&lt;br /&gt;
          &amp;lt;Tags&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;1&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Anime]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Zebra]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
            &amp;lt;Tag sortOrder=&amp;quot;3&amp;quot; visibleToAll=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;![CDATA[Privatetag]]&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
          &amp;lt;/Tags&amp;gt;&lt;br /&gt;
        &amp;lt;/Picture&amp;gt;&lt;br /&gt;
      &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
      &amp;lt;Tags&amp;gt;&lt;br /&gt;
        &amp;lt;Tag sortOrder=&amp;quot;2&amp;quot;&amp;gt;&amp;lt;/Tag&amp;gt;&lt;br /&gt;
      &amp;lt;/Tags&amp;gt;&lt;br /&gt;
    &amp;lt;/User&amp;gt;&lt;br /&gt;
  &amp;lt;/Users&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;Pictures&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;31&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07&amp;quot; makerId=&amp;quot;3&amp;quot; buyerId=&amp;quot;9999999&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Drunk zebra and sunset]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://upload.wikimedia.org/wikipedia/commons/8/83/Zebra_Botswana_edit02.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;32&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07.123&amp;quot; makerId=&amp;quot;3&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Not so drunk zebra and sunset]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://upload.wikimedia.org/wikipedia/commons/8/83/Zebra_Botswana_edit02.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;33&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07.123&amp;quot; makerId=&amp;quot;3&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[No Zebra and sunse]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://upload.wikimedia.org/wikipedia/commons/8/83/Zebra_Botswana_edit02.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;7&amp;quot; dateCompleted=&amp;quot;2008-03-09T16:05:07.123&amp;quot; makerId=&amp;quot;9999999&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Landscape]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[http://i.imgur.com/IL5qx77r.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;777&amp;quot; dateCompleted=&amp;quot;2012-03-09T12:33:07.678&amp;quot; makerId=&amp;quot;9999999&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Purple Butterfly]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[http://i.imgur.com/tJvg7Qd.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;888&amp;quot; dateCompleted=&amp;quot;2016-03-09T11:11:11.555&amp;quot; makerId=&amp;quot;9999999&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Owl how-to]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[http://i.imgur.com/kArLDrg.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;880&amp;quot; dateCompleted=&amp;quot;2016-02-09T09:21:11.321&amp;quot; makerId=&amp;quot;999992&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Anime scenery]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://s-media-cache-ak0.pinimg.com/736x/c8/f8/a5/c8f8a53e2831a5917fbedaac2f08e265.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
    &amp;lt;Picture id=&amp;quot;280&amp;quot; dateCompleted=&amp;quot;2016-01-02T19:21:11.321&amp;quot; makerId=&amp;quot;299992&amp;quot; buyerId=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Name&amp;gt;&amp;lt;![CDATA[Trace how-to]]&amp;gt;&amp;lt;/Name&amp;gt;&lt;br /&gt;
      &amp;lt;LocationUrl&amp;gt;&amp;lt;![CDATA[https://s-media-cache-ak0.pinimg.com/736x/c8/f8/a5/c8f8a53e2831a5917fbedaac2f08e265.jpg]]&amp;gt;&amp;lt;/LocationUrl&amp;gt;&lt;br /&gt;
    &amp;lt;/Picture&amp;gt;&lt;br /&gt;
  &amp;lt;/Pictures&amp;gt;&lt;br /&gt;
&amp;lt;/Shop&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===XSD===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xs:schema attributeFormDefault=&amp;quot;unqualified&amp;quot; elementFormDefault=&amp;quot;qualified&amp;quot; xmlns:xs=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;xs:simpleType name=&amp;quot;ValidateEmail&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xs:pattern value=&amp;quot;[A-Za-z0-9_]+([-+.&#039;][A-Za-z0-9_]+)*@[A-Za-z0-9_]+([-.][A-Za-z0-9_]+)*\.[A-Za-z0-9_]+([-.][A-Za-z0-9_]+)*&amp;quot; /&amp;gt;&lt;br /&gt;
      &amp;lt;xs:minLength value=&amp;quot;6&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xs:maxLength value=&amp;quot;64&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;xs:simpleType name=&amp;quot;CountryCodeRestr&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xs:minLength value=&amp;quot;2&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xs:maxLength value=&amp;quot;3&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;xs:element name=&amp;quot;Shop&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
      &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;Users&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
            &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
              &amp;lt;xs:element maxOccurs=&amp;quot;unbounded&amp;quot; name=&amp;quot;User&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Username&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:minLength value=&amp;quot;5&amp;quot;/&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;32&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Email&amp;quot; type=&amp;quot;ValidateEmail&amp;quot; /&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Description&amp;quot; &amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;10000&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Pictures&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:element maxOccurs=&amp;quot;unbounded&amp;quot; name=&amp;quot;Picture&amp;quot;&amp;gt;&lt;br /&gt;
                            &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                                &amp;lt;xs:element name=&amp;quot;Description&amp;quot;&amp;gt;&lt;br /&gt;
                                  &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                                    &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                                      &amp;lt;xs:maxLength value=&amp;quot;5000&amp;quot;/&amp;gt;&lt;br /&gt;
                                    &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                                  &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                                &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                                &amp;lt;xs:element name=&amp;quot;Tags&amp;quot;&amp;gt;&lt;br /&gt;
                                  &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                                    &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                                      &amp;lt;xs:element maxOccurs=&amp;quot;50&amp;quot; name=&amp;quot;Tag&amp;quot;&amp;gt;&lt;br /&gt;
                                        &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                                          &amp;lt;xs:simpleContent&amp;gt;&lt;br /&gt;
                                            &amp;lt;xs:extension base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                                              &amp;lt;xs:attribute name=&amp;quot;sortOrder&amp;quot; type=&amp;quot;xs:unsignedByte&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                                              &amp;lt;xs:attribute name=&amp;quot;visibleToAll&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                                            &amp;lt;/xs:extension&amp;gt;&lt;br /&gt;
                                          &amp;lt;/xs:simpleContent&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                                      &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                                    &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                                  &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                              &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:attribute name=&amp;quot;visible&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:attribute name=&amp;quot;favorite&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                            &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                          &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Tags&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:element maxOccurs=&amp;quot;50&amp;quot; name=&amp;quot;Tag&amp;quot; &amp;gt;&lt;br /&gt;
                            &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                              &amp;lt;xs:simpleContent&amp;gt;&lt;br /&gt;
                                &amp;lt;xs:extension base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                                  &amp;lt;xs:attribute name=&amp;quot;sortOrder&amp;quot; type=&amp;quot;xs:unsignedByte&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xs:extension&amp;gt;&lt;br /&gt;
                              &amp;lt;/xs:simpleContent&amp;gt;&lt;br /&gt;
                            &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                          &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                  &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;registerDate&amp;quot; type=&amp;quot;xs:dateTime&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;disabled&amp;quot; type=&amp;quot;xs:boolean&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;birthDate&amp;quot; type=&amp;quot;xs:dateTime&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;countryCode&amp;quot; type=&amp;quot;CountryCodeRestr&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
              &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
            &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
          &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
        &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
        &amp;lt;xs:element name=&amp;quot;Pictures&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
            &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
              &amp;lt;xs:element maxOccurs=&amp;quot;unbounded&amp;quot; name=&amp;quot;Picture&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xs:complexType&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:sequence&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;Name&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:minLength value=&amp;quot;1&amp;quot;/&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;512&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                    &amp;lt;xs:element name=&amp;quot;LocationUrl&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xs:simpleType&amp;gt;&lt;br /&gt;
                        &amp;lt;xs:restriction base=&amp;quot;xs:string&amp;quot;&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:minLength value=&amp;quot;1&amp;quot;/&amp;gt;&lt;br /&gt;
                          &amp;lt;xs:maxLength value=&amp;quot;5000&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
                      &amp;lt;/xs:simpleType&amp;gt;&lt;br /&gt;
                    &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
                  &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;dateCompleted&amp;quot; type=&amp;quot;xs:dateTime&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;makerId&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;required&amp;quot; /&amp;gt;&lt;br /&gt;
                  &amp;lt;xs:attribute name=&amp;quot;buyerId&amp;quot; type=&amp;quot;xs:unsignedLong&amp;quot; use=&amp;quot;optional&amp;quot; default=&amp;quot;0&amp;quot; /&amp;gt;&lt;br /&gt;
                &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
              &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
            &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
          &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
        &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
      &amp;lt;/xs:sequence&amp;gt;&lt;br /&gt;
    &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;
  &amp;lt;/xs:element&amp;gt;&lt;br /&gt;
&amp;lt;/xs:schema&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===XSLT(html)===&lt;br /&gt;
&#039;&#039;&#039;Tulemus:&#039;&#039;&#039; [http://enos.itcollege.ee/~tlanno/Csharp/Transformation.htm]&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot; xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; xmlns:msxsl=&amp;quot;urn:schemas-microsoft-com:xslt&amp;quot; exclude-result-prefixes=&amp;quot;msxsl&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:output method=&amp;quot;html&amp;quot; indent=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
          &amp;lt;!-- Latest compiled and minified CSS --&amp;gt;&lt;br /&gt;
          &amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css&amp;quot; integrity=&amp;quot;sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7&amp;quot; crossorigin=&amp;quot;anonymous&amp;quot; /&amp;gt;&lt;br /&gt;
          &amp;lt;!-- Optional theme --&amp;gt;&lt;br /&gt;
          &amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css&amp;quot; integrity=&amp;quot;sha384-fLW2N01lMqjakBkx3l/M9EahuwpSfeNvV63J5ezn3uZzapT0u7EYsXMjQV+0En5r&amp;quot; crossorigin=&amp;quot;anonymous&amp;quot; /&amp;gt;&lt;br /&gt;
          &amp;lt;!-- Latest compiled and minified JavaScript --&amp;gt;&lt;br /&gt;
          &amp;lt;script src=&amp;quot;https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js&amp;quot; integrity=&amp;quot;sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS&amp;quot; crossorigin=&amp;quot;anonymous&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
          &amp;lt;div class=&amp;quot;container&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;div class=&amp;quot;page-header&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;h2&amp;gt;Our users: &amp;lt;/h2&amp;gt;&lt;br /&gt;
            &amp;lt;/div&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:for-each select=&amp;quot;/Shop/Users/User&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;h3&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&amp;quot;Username&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:text&amp;gt; - &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
                &amp;lt;small&amp;gt;&amp;lt;xsl:value-of select=&amp;quot;Email&amp;quot;/&amp;gt;&amp;lt;/small&amp;gt;&lt;br /&gt;
              &amp;lt;/h3&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:for-each select=&amp;quot;Tags/Tag&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;span class=&amp;quot;label label-info&amp;quot;&amp;gt;&amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
              &amp;lt;br/&amp;gt;&lt;br /&gt;
              &amp;lt;table class=&amp;quot;table table-hover&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;thead&amp;gt;&lt;br /&gt;
                  &amp;lt;tr&amp;gt;&lt;br /&gt;
                    &amp;lt;th&amp;gt;Register date&amp;lt;/th&amp;gt;&lt;br /&gt;
                    &amp;lt;th&amp;gt;Birthday&amp;lt;/th&amp;gt;&lt;br /&gt;
                    &amp;lt;th&amp;gt;Country code&amp;lt;/th&amp;gt;&lt;br /&gt;
                  &amp;lt;/tr&amp;gt;&lt;br /&gt;
                &amp;lt;/thead&amp;gt;&lt;br /&gt;
                &amp;lt;tbody&amp;gt;&lt;br /&gt;
                  &amp;lt;tr&amp;gt;&lt;br /&gt;
                    &amp;lt;td&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:variable name=&amp;quot;dt&amp;quot; select=&amp;quot;@registerDate&amp;quot;/&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:value-of select=&amp;quot;concat(&lt;br /&gt;
                        substring($dt, 9, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 6, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 1, 4)&lt;br /&gt;
                        )&amp;quot;/&amp;gt;                      &lt;br /&gt;
                    &amp;lt;/td&amp;gt;&lt;br /&gt;
                    &amp;lt;td&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:variable name=&amp;quot;dt&amp;quot; select=&amp;quot;@birthDate&amp;quot;/&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:value-of select=&amp;quot;concat(&lt;br /&gt;
                        substring($dt, 9, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 6, 2),&lt;br /&gt;
                        &#039;/&#039;,&lt;br /&gt;
                        substring($dt, 1, 4)&lt;br /&gt;
                        )&amp;quot;/&amp;gt;&lt;br /&gt;
                    &amp;lt;/td&amp;gt;&lt;br /&gt;
                    &amp;lt;td&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:value-of select=&amp;quot;@countryCode&amp;quot;/&amp;gt;&lt;br /&gt;
                    &amp;lt;/td&amp;gt;&lt;br /&gt;
                  &amp;lt;/tr&amp;gt;&lt;br /&gt;
                &amp;lt;/tbody&amp;gt;&lt;br /&gt;
              &amp;lt;/table&amp;gt;&lt;br /&gt;
              &amp;lt;h4&amp;gt;User description:&amp;lt;/h4&amp;gt;&lt;br /&gt;
              &amp;lt;p align=&amp;quot;justify&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&amp;quot;Description&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;/p&amp;gt;&lt;br /&gt;
              &amp;lt;br/&amp;gt;&lt;br /&gt;
              &amp;lt;h4&amp;gt;User pictures:&amp;lt;/h4&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:for-each select=&amp;quot;Pictures/Picture&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:variable name=&amp;quot;picId&amp;quot; select=&amp;quot;@id&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:for-each select=&amp;quot;/Shop/Pictures/Picture&amp;quot;&amp;gt;           &lt;br /&gt;
                  &amp;lt;xsl:if test = &amp;quot;$picId = @id&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;b&amp;gt;&amp;lt;xsl:value-of select=&#039;Name&#039; /&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
                    &amp;lt;br/&amp;gt;&lt;br /&gt;
                    &amp;lt;img height=&amp;quot;50px&amp;quot;&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:attribute name=&amp;quot;src&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsl:value-of select=&#039;LocationUrl&#039; /&amp;gt;&lt;br /&gt;
                      &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                      &amp;lt;xsl:attribute name=&amp;quot;alt&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsl:value-of select=&#039;Name&#039; /&amp;gt;&lt;br /&gt;
                      &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                    &amp;lt;/img&amp;gt;&lt;br /&gt;
                  &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
                &amp;lt;br/&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:for-each select=&amp;quot;Tags/Tag&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;span class=&amp;quot;label label-info&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
                  &amp;lt;/span&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
                &amp;lt;h5&amp;gt;Picture description:&amp;lt;/h5&amp;gt;&lt;br /&gt;
                &amp;lt;p align=&amp;quot;justify&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;xsl:value-of select=&amp;quot;Description&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/p&amp;gt;&lt;br /&gt;
                &amp;lt;br/&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
              &amp;lt;br/&amp;gt;&lt;br /&gt;
            &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
          &amp;lt;/div&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
      &amp;lt;/html&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===XSLT(xml)===&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot; xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot; xmlns:msxsl=&amp;quot;urn:schemas-microsoft-com:xslt&amp;quot; exclude-result-prefixes=&amp;quot;msxsl&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:output method=&amp;quot;xml&amp;quot; indent=&amp;quot;yes&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;Root&amp;gt;&lt;br /&gt;
        &amp;lt;AllUsers&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:for-each select=&amp;quot;/Shop/Users/User&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;User&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:attribute name=&amp;quot;id&amp;quot;&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:value-of select=&#039;@id&#039; /&amp;gt;&lt;br /&gt;
            &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
            &amp;lt;xsl:value-of select=&amp;quot;Username&amp;quot;/&amp;gt;&lt;br /&gt;
          &amp;lt;/User&amp;gt;&lt;br /&gt;
        &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
        &amp;lt;/AllUsers&amp;gt;&lt;br /&gt;
        &amp;lt;AllPictures&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:for-each select=&amp;quot;/Shop/Pictures/Picture&amp;quot;&amp;gt;&lt;br /&gt;
            &amp;lt;Picture&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:attribute name=&amp;quot;id&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&#039;@id&#039; /&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:choose&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:when test = &amp;quot;@buyerId != 0&amp;quot;&amp;gt;&lt;br /&gt;
                  &amp;lt;xsl:attribute name=&amp;quot;IsSold&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;xsl:text&amp;gt;true&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
                  &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:when&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:otherwise&amp;gt;&lt;br /&gt;
                  &amp;lt;xsl:attribute name=&amp;quot;IsSold&amp;quot;&amp;gt;&lt;br /&gt;
                    &amp;lt;xsl:text&amp;gt;false&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
                  &amp;lt;/xsl:attribute&amp;gt;&lt;br /&gt;
                &amp;lt;/xsl:otherwise&amp;gt;&lt;br /&gt;
              &amp;lt;/xsl:choose&amp;gt;&lt;br /&gt;
              &amp;lt;Location&amp;gt;&lt;br /&gt;
                &amp;lt;xsl:value-of select=&amp;quot;LocationUrl&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;/Location&amp;gt;&lt;br /&gt;
            &amp;lt;/Picture&amp;gt;&lt;br /&gt;
          &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
        &amp;lt;/AllPictures&amp;gt;&lt;br /&gt;
      &amp;lt;/Root&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Retsensioon ==&lt;br /&gt;
&#039;&#039;&#039;Travo 2.0&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Meeskond Travo 2.0 on loonud XML faili andmete edastamiseks, selle XML faili skeemifaili ning XSL transformatsiooni faili. Töö teemaks on kool: klassid, õpilased ning kursused. &lt;br /&gt;
&lt;br /&gt;
Tööd tehes on tähele pandud, et tagid on tõstutundlikud ning lõpetatud. Kood on töökorras ja lihtsasti jälgitav, (hästi disainitud). Elemendid on ühtselt ingliskeelsed, kuid meeskond on arvestanud kõigega: kommentaarides on ära märgitud ka eestikeelsed vasted. Ka elemendinimed vastavad reeglitele (pole ühtegi tühikut või numbrit) ning elemendid on kenasti grupeeritud kasutades alamgruppe ja id&#039;sid (Groups -&amp;gt; Group (1, 2, 3); Students -&amp;gt; Student (1, 2, 3) jne). Samas, kui skeemifailis (XSD) on kasutatud paljusid erinevaid atribuute, siis XMLis jääb neid veidi puudu (kasutusel on vaid id ja elemendis Students veel birthDate). Transformatsiooni failis võiks samuti olla veidi enam kui for-each klausel ja value-of (tingimuste kontrolle jms). Transformatsiooni faile on ülesandes ette nähtud kahe asemel üks, kuid selle eest on failis tervelt kolm tabelit ning positiivne on, et XML failis on olemas 4 dimensiooni, nagu ülesandes kirjas oli.&lt;br /&gt;
&lt;br /&gt;
Üldiselt arvab meie meeskond, et tehtud töö on kena ja konkreetne. Enam-vähem kõik ülesande punktid on hästi täidetud ning puudujääke ei panegi peaaegu tähele. Meeskond Travo 2.0 on ilmselgelt astunud sammu edasi ning tulevikus ootame vaid suuri tegusid! 2k16&lt;br /&gt;
&lt;br /&gt;
== Logi ==&lt;br /&gt;
===== 19.03.16 =====&lt;br /&gt;
* Tegime valmis XMLi, XSD ja XSLT-d&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== 07.03.16 =====&lt;br /&gt;
* Kerli käis õppejõud Käveriga rääkimas andmebaasi ülesehitusest. Andmebaas hakkab ilmet võtma.&lt;br /&gt;
* [[File:Lebokeiss pic3.jpg|200px|Andmebaasi struktuuri edasiehitus]][[File:Lebokeiss pic4.jpg|200px|Andmebaasi struktuuri edasiehitus]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== 01.03.16 =====&lt;br /&gt;
* Moodustasime tiimi. &lt;br /&gt;
* Hakkasime arutlema projekti andmebaasi ülesehituse üle.&lt;br /&gt;
* [[File:Lebokeiss pic1.jpg|200px|Esialgne andmebaasi struktuur]][[File:Lebokeiss pic2.jpg|200px|Grupifoto]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=100865</id>
		<title>Meeskond: Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=100865"/>
		<updated>2016-01-24T04:49:51Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Täpsemalt rakenduse tööst */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== C# projekt Vajutuskunn==&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Meeskonna nimi: Lebokeiss OÜ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projekt=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteemi ja valitud programmide lühendite õppimise simuleerimise rakendus.&lt;br /&gt;
&lt;br /&gt;
=Meeskonna koosseis=&lt;br /&gt;
&lt;br /&gt;
*Iris Tambaum&lt;br /&gt;
*Kerli Edasi&lt;br /&gt;
*Joonas Jõeleht&lt;br /&gt;
*Timo Lanno&lt;br /&gt;
*Karell Veskimeister&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projektijuht: Joonas Jõeleht&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projektist=&lt;br /&gt;
&lt;br /&gt;
==Ülevaade==&lt;br /&gt;
Klaviatuuri kombinatsioonide simulatsiooni tarkvara, mis pakub kliendile võimalust mugavas ja stressivabas keskkonnas kiirelt omandada erinevaid kombinatsioone. Eesmärk on lühendada koolitustel erinevate käskude ja lühendite omandamise aega. Samal ajal ka pakkuda võimalust iseseisvalt arendada enda oskusi valitud keskkonnas. &lt;br /&gt;
&lt;br /&gt;
== Kasutatav .NET tehnoloogia ==&lt;br /&gt;
&lt;br /&gt;
Kasutatav raamistik: .NET Framework 4.5&lt;br /&gt;
&lt;br /&gt;
Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ&lt;br /&gt;
&lt;br /&gt;
Kasutatav arhetektuuriline muster: MVVM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Täpsemalt rakenduse tööst==&lt;br /&gt;
===Idee kirjeldus===&lt;br /&gt;
&lt;br /&gt;
Tänapäeva inimene veedab oma päeva suures osas arvutis, kasutades erinevaid programme. Olgu selleks interneti brauser või tekstitöötlusprogramm. Me kõik teame, et igal programmil on olemas klahvide kiirkombinatsioonid, millega saab programmi efektiivsemalt kasutada, ent siiski me neid üleliia palju ei kasuta, sest kiirkombinatsioonid jäävad raskesti meelde ja neid on palju.&lt;br /&gt;
&lt;br /&gt;
Meie loodav programm on platvorm, mille esmane eesmärk on aidata kasutajal õppida erinevaid klahvikombinatsioone läbi testide lisamise ning vastavas testis olnud klahvikombinatsioonide harjutamise.&lt;br /&gt;
&lt;br /&gt;
Lisafunktsionaalsus, mida esimene etapp ei pruugi realiseerida, on arvestamine kasutaja ajalooga. Selle all mõtleme just valesti vajutatud/vastatud klahvikombinatsioone. Me sooviksime kindla algoritmi alusel valesti vajutatud klahvikombinatsioone kasutajale uuesti ülesandeks ette anda, et need kinnistuksid.&lt;br /&gt;
&lt;br /&gt;
===Mida rakendus endas sisaldab? (Mis võimalused seal on?)===&lt;br /&gt;
&lt;br /&gt;
Rakendus võimaldab luua kasutaja, kuid rakendust saab kasutada ka “külalisena”. Kasutaja saab luua enda tingimustele vastavaid teste, neid importida ja eksportida. Kasutaja eelis tavalise külalise ees on see, et kasutaja saab näha enda ülesannete statistikat ning arengut ja platvorm “kohandub” tema tegutsemisajaloo järgi ning soovitab treenida just neid klahvikombinatsioone, milles on rohkem eksitud. &lt;br /&gt;
&lt;br /&gt;
Teste saab teha rakenduse siseselt kättesaadavaks kõigile, (see tähendab, et need on kättesaadavad antud arvuti kasutajatele) või hoida privaatsena ehk kasutajaspetsiifilisena.  &lt;br /&gt;
	&lt;br /&gt;
Samuti saab teste meie platvormilt eksportida. Nii saavad teised kasutajad need testid oma programmi importida ja neid ka ise läbi teha. See funktsionaalsus võimaldab kasutajatel oma teste teistega jagada.&lt;br /&gt;
&lt;br /&gt;
===Milliste osade realiseerimine võib osutuda problemaatiliseks?===&lt;br /&gt;
&lt;br /&gt;
Probleemiks võib osutada Windowsis niinimetatud default klahvikombinatsioonide “üle kirjutamine” ja kättesaamine (näiteks klaviatuuril olev windows klahv avab windowsis igal juhul start menüü), kuid kuna meil on teadmine, et näiteks vmwares või virtualboxis olles on see funktsionaalsus edukalt üle kirjutatud, siis on see tehtav (märksõnaks võiks olla P/Invoke).&lt;br /&gt;
	&lt;br /&gt;
Problemaatiline võib olla ka efektiivse õppimisalgoritmi välja mõtlemine. Näiteks, kui tihti peaks soovitama kasutajal harjutada ja asju korrata, et asi kinnistuks. Samuti, kui tihti peaks laskma kasutajal harjutada klahvivajutusi, millega ta pole kordagi eksinud versus klahvivajutused, millega juba on eksitud. Eeskujuks loodame selle jaoks võtta programmi FullRecall ning teiseks märksõnaks võiks olla “Spaced Repetition” https://en.wikipedia.org/wiki/Spaced_repetition), kust saab samuti eeskuju võtta.&lt;br /&gt;
&lt;br /&gt;
===Kasutusjuhend===&lt;br /&gt;
&lt;br /&gt;
Rakenduse avalehel on kasutajal võimalus valida testide seast endale sobiv variant või lisada mõni juurde. &lt;br /&gt;
Vajutades sobiva testi peale tekib kasutajal võimalus seda harjutada või läbida testina. Harjutades on võimalus valida abistavate režiimide vahel (&#039;näita&#039; - näitab vastuseboksis vastust, &#039;viivitus&#039; - näitab pärast väikest aega vastuseboksis õiget vastust), kuid harjutada saab ka tavarežiimis (valides &#039;peida&#039;). Testi tehes abistavaid variante enam pole. Vajutades &#039;Alusta&#039; nuppu tekib testi nime alla ülesande kirjeldus. Vajutades vastavaid klahve näeb kasutaja, kas vastus oli õige ning samuti näeb järgmist ülesannet. &lt;br /&gt;
Harjutamise või testi tegemise saab lõpetada endale sobival ajal vajutades nuppu &#039;lõpeta.&#039; &lt;br /&gt;
Kasutajal on alati võimalus minna tagasi avalehele kasutades nuppu &#039;tagasi&#039; või &#039;Fail&#039; menüüst valikut &#039;Algus&#039;. Harjutamise või testimise lõpetades saab kasutaja tagasisidet. &lt;br /&gt;
&lt;br /&gt;
Lisaks on olemas menüüd &#039;Kasutaja&#039; ja &#039;Abi.&#039; &#039;Kasutaja&#039; menüüst on võimalik ennast registreerida kasutajaks ning sisse logida. Samuti saab sealt vaadata statistika lehte erinevate kasutajate ja nende tulemuste kohta ja muuta oma seadeid.&lt;br /&gt;
&#039;Abi&#039; menüüst saab kasutaja lugeda rohkem Lebokeissi meeskonna kohta ning lisada uusi teste. &lt;br /&gt;
&lt;br /&gt;
Vajutuskunni tiim on teinud rakenduse võimalikult lihtsasti kasutatavaks. Paljude asjade jaoks on nii kiirteed (nt avalehel testi peal klikkides tekkivad nupud) kui ka vana hea menüü valik. Seega loodame, et rakenduse kasutamine on kerge ja kõigile sobiv.&lt;br /&gt;
&lt;br /&gt;
==Funktsionaalsused==&lt;br /&gt;
===Planeeritavad funktsionaalsused===&lt;br /&gt;
&lt;br /&gt;
*Kasutajate haldamine (loomine, muutmine, kustutamine). &lt;br /&gt;
&lt;br /&gt;
*Kasutajarollid - tavakasutaja ei tohiks saada teist kasutajat muuta/kustutada.&lt;br /&gt;
&lt;br /&gt;
*Testide loomine, muutmine, kustutamine, eksportimine ja importimine.&lt;br /&gt;
&lt;br /&gt;
*Statistikamoodul - õigesti ning valesti vastatud küsimuste vaatamine sessiooni ajal (hetkeseis) ning pärast sessiooni (vahetult pärast äsja läbitud testi). Samuti on olemas kogu statistika (kõikide läbitud testide kohta).&lt;br /&gt;
&lt;br /&gt;
*Mõlemat pidi funktsionaalsus - alguses kuvatakse lühendi kirjeldus ning kasutaja vajutab vastuse või kuvatakse esimesena lühend ja siis kasutaja kirjeldab seda.&lt;br /&gt;
&lt;br /&gt;
*Abi nupp - abi nupule vajutades kuvatakse rippmenüü võimalike vastustega, (juhtub ka pärast kindla aja möödumist).&lt;br /&gt;
&lt;br /&gt;
*Vastuse nupp - kuvatakse õige vastus.&lt;br /&gt;
&lt;br /&gt;
*Treeningrežiim - näed kohe ka vastust, ent pead ikka õigeid klahve vajutama. Kasulik, kui alles importisid uue testi ja ei tea reaalselt ühtegi klahvikombinatsiooni.&lt;br /&gt;
&lt;br /&gt;
*Meie programmi õppetükk - kuna meie enda rakendusel on ka oma klahvikombinatsioonid, siis vaikimisi on lisatud meie rakenduse klahvikombinatsioonide õppetükk.&lt;br /&gt;
&lt;br /&gt;
*Pikemate klahvikombinatsioonide koos kasutamine - näiteks Ctrl+C ja Ctrl+V töötavad ühe vastusena ja vajalik on, et vajutatakse mõlemad ning õiges järjekorras.&lt;br /&gt;
&lt;br /&gt;
===Võimalikud funktsionaalsused (kui aega üle jääb)===&lt;br /&gt;
*Ajastatud kordamine, et teadmised kinnistuks paremini mällu. Niinimetatud “spaced repetition” (https://en.wikipedia.org/wiki/Spaced_repetition). Rakendus peaks soovitama, millal uuesti treenima peaks ning klahvikombinatsioonid, millega on rohkem eksitud, kuvataks tihedamini testides.&lt;br /&gt;
&lt;br /&gt;
*Asja mängulisemaks muutmiseks võib anda kasutajale võimaluse täita erinevaid “väljakutseid” ja nende täitmisel saaks märke. Näiteks “30 päeva järjest harjutamist”, “100 õiget järjest” jne.&lt;br /&gt;
&lt;br /&gt;
*Otsingufunktsionaalsus - võimalik otsida õppetükkidest kindlaid kombinatsioone ja lahendusi. Abiks siis, kui ei taha treenida, aga tahaks mõnda kombinatsiooni kiiresti leida ja muuta.&lt;br /&gt;
&lt;br /&gt;
*Eksportida/importida kasutaja ajalugu - saab näiteks oma ajaloo teise arvutisse viia ja jätkata oma treeninguid sealt, kus pooleli jäi.&lt;br /&gt;
&lt;br /&gt;
*Võimalus sisestada ka muid ülesandeid peale klahvikombinatsioonide. Näiteks raamatute autorite teadmine.&lt;br /&gt;
&lt;br /&gt;
*Erinevad ülesannete lahendamisviisid. Näiteks ajapiirang - mitu õiget järjest jms.&lt;br /&gt;
&lt;br /&gt;
*Enda tulemuste võrdlemine teiste kasutajate samade testide aegadega.&lt;br /&gt;
&lt;br /&gt;
*Koduleht, kus me haldame ja hoiame ülesandeid ning lokaalsetest rakendustest saab neid ülesandeid alla tõmmata/kasutaja saab märguande, kui uusi ülesandeid on lisatud.&lt;br /&gt;
&lt;br /&gt;
*Kasutaja konto on ühendatud kodulehega, nii et uues kohas sisse logides laetakse automaatselt alla kõik kasutaja seaded/ajalugu/testid.&lt;br /&gt;
&lt;br /&gt;
*Internetis olev edetabel, kus kasutajad saaksid end teiste kasutajatega võrrelda&lt;br /&gt;
&lt;br /&gt;
*Multiplatvormne lahendus: Windows, Mac ja Linux(common distributions) support.&lt;br /&gt;
&lt;br /&gt;
==Andmebaasimudel==&lt;br /&gt;
&lt;br /&gt;
Plaanitava lõpptoote andmebaasimudel.&lt;br /&gt;
&lt;br /&gt;
[[http://enos.itcollege.ee/~jjoeleht/csharp/andmebaasipilt.pdf Andmebaasimudel]]&lt;br /&gt;
&lt;br /&gt;
==Prototüüp==&lt;br /&gt;
&lt;br /&gt;
17. Detsember kaitstud prototüüp, ülesseadmise juhend on .rar failis .txt kujul kaasas. Funktsionaalsusest Saab registreerida, sisse logida ja näidistesti lahendada.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://enos.itcollege.ee/~jjoeleht/csharp/VajutuskunnProgram.rar Prototüüp]&lt;br /&gt;
&lt;br /&gt;
==Lõpptoode==&lt;br /&gt;
&lt;br /&gt;
Lisatud lõpptoode. &lt;br /&gt;
&lt;br /&gt;
[http://enos.itcollege.ee/~jjoeleht/VajutuskunnProgramLopp.zip Lõpptoode]&lt;br /&gt;
&lt;br /&gt;
=Kokkusaamiste logid=&lt;br /&gt;
&lt;br /&gt;
22.01 Kokkuvõtvalt mida me õppisime. Suurimad õppetunnid jõudsid kätte programmi töö sujuvamaks muutmisel ja bugide eemaldamisel. Eelnevalt kirjutatud kood kuulus väga tihti kvaliteedistandardilt &amp;quot;hotfix&amp;quot; kategooriasse ja kogu meetod või service tuli ümber kirjutada, et ei oleks tunnet nagu kogu kood töötaks ainult tänu kahele imeilusale &amp;quot;parandusele&amp;quot; koodis. Samuti tehtud analüüsi ja funktsionaalsuste nimekirja polnud vist kordagi kirjutades ees, pigem oli küsimus, mis me nüüd lisame ja siis läks selle kallal töö käima. Kuna see on kindlasti seniajani suurim projekt mis suuremal osal meist ette võetud, siis polnud meil pehmelt öeldes halli aimugi mis osad tuleks enne valmis teha peale selle, et MVVM struktuur tuleks esimesena teha. Positiivne üllatus oli see, et kui tiimikaaslane ikka pusis oma koodi kallal, siis ei saanud ise ka kehvem olla ja kindlasti motiveeris see teisi ka facebooki kinni panema ja paar rida või meetodit kirjutama. Võib öelda, et üksinda oleks heal juhul kaks inimest selle projektiga täna vaadeldavasse staadiumisse jõudnud. Arendusprotsessist lähemalt rääkides saab välja tuua orgaaniliselt kujunenud rollid. Kui Kerli näiteks tegeles suuremas osas disainiga, siis Timol polnud sooja ega külma, kas kasutatav font on Times New Roman või Roboto. Mõnikord tärkas Timo XAMLi vaadates suure üllatusega, et kuidas küll on Kerli lisanud buttoni, millel pole ühtegi propertyt peale pildi, aga nupu funktsionaalsus on olemas, saades hiljem aru, et ta vaatas ainult buttoni lõputagi. Iris hoolitses bugide ja tegemist vajavate funktsionaalsuste lahendamise eest, testides ja motiveerides tiimiliikmeid tööle. Karell ja Joonas tegelesid Irise poolt leitud lõpmatu hulga &amp;quot;featurite&amp;quot; kõrvaldamisega ja ka uute funktsionaalsuste lisamisega. Üldiselt leiame, et ilma üksteise toetuseta ei oleks me jõudnud oma projektiga lõpule ja arvame, et me kõik oleme väärt võrdset tulemust.  &lt;br /&gt;
&lt;br /&gt;
17.12 Kaitsesime klassi ees prototüüpi ning peale seda saime kokku ja arutasime edasise programmi teostamist ning kontrollisime, et kõik meeskonnaliikmed saaks koodist samamoodi aru. Lisasime koodile ka kommentaare. Samuti hakkasime tegema retsensiooni [https://wiki.itcollege.ee/index.php/Meeskond:_Travo Travo]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
16.12 Saime kokku ja programmeerisime kaitstavat prototüüpi. Tekkis probleeme vaatest DataContext-i kättesaamisega, sest meie View ja ViewModel on ühendatud läbi XAMLi, kuid lahendus oli sellele tegelikult lihtne. Meie prototüüp saab nüüd aru klahvivajutustest ning kasutajaid saab registreerida ning need lisatakse reaalselt andmebaasi!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
12.11 Kogunesime koolis ning joonistasime tahvlile paari vaate väljanägemise.. samuti sai ka esialgne projektistruktuur paika pandud esialgu oli jagatud projekt kaheks .DAL ja .WPF paar nädalat hiljem saime aru, et oli ka vaja kolmandat projekti .BLL. Vahepealsest arengutest nii palju, et Vajutuskunni projekti andmemudeli eest hoolitseb Joonas andmebaaside alused aine raames.. ja UI poole peale mõtlevad Karell, Timo ja Kerly aines &amp;quot;Kasutajaliideste disain ja arendus&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
31.10 Saime kõik ka reaalselt kokku ja vaatasime, mida keegi avastanud oli ning tegime alguse analüüsi kirjutamisega.&lt;br /&gt;
&lt;br /&gt;
Iris oli avastanud meie projektile sarnase lehekülje https://www.shortcutfoo.com/ mille miinuseks võib tuua, et sinna ei saa oma harjutusi sisse importida.. ent plussiks on lihtne kasutajaliides ja palju erinevaid treeninguvariante. &lt;br /&gt;
&lt;br /&gt;
Timo näitas lehte http://fullrecall.com/ millest võiks eeskuju võtta just intervallide mõttes, et kui tihti peaks inimene asju kordama, et need kinnistuks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
25.10 Kohtusime virtuaalselt telegrammi vahendusel. Lõime meeskonnale Team Foundation Service&#039;i konto ning tutvusime võimalustega. &lt;br /&gt;
&lt;br /&gt;
Järgmiseks reaalseks kogunemiseks sai määratud 30. okt. Igale meeskonna liikmele sai ka projektijuhi poolt antud väike kont järada, et reedel saaksime olla konstruktiivsemad.&lt;br /&gt;
&#039;&#039;&#039;Järatavad kondid:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Karell - uurib, millised oleks Windows Presentation Foundationis kujundus võimalused ja piirangud näiteks kas me saame oma applicationi muu kujulise kui kast teha? Värvipiirangud? Popupid?&lt;br /&gt;
&lt;br /&gt;
Kerly-Timo - mõtlevad natuke vaadete kujunduse peale.. või üldiselt milline meie programm võiks väliselt välja näha.&lt;br /&gt;
&lt;br /&gt;
Iris uurib netis teisi sarnaseid programme/või kodulehti.. et palju neid olemas juba on, mis funktsionaalsust me neilt üle võiks võtta ning mis on nende puudused, mis meie programmis võiks olla lahendatud.&lt;br /&gt;
&lt;br /&gt;
Joonas uurib seda kuidas c sharpis ära kaaperdada kõik klahvivajutused, ka windowsi enda omad.. &lt;br /&gt;
&lt;br /&gt;
Samuti võiksid kõik meeskonnaliikmed uurida TFS võimalusi. Veidi ringi klikata ja keskkonnaga tutvuda. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
22.10&lt;br /&gt;
Saime esimest korda kokku ja genereerisime erinevaid ideid, millest kolm olid kõige huvitavamad. Neist valisime siis välja parima - Vajutuskunn.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Talk:Meeskond:_Travo&amp;diff=97446</id>
		<title>Talk:Meeskond: Travo</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Talk:Meeskond:_Travo&amp;diff=97446"/>
		<updated>2015-11-09T14:33:30Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Retsensioon meeskond Travo projekti analüüsile */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Retsensioon meeskond Travo projekti analüüsile=&lt;br /&gt;
Koostanud:[[Meeskond:_Lebokeiss_OÜ]]&lt;br /&gt;
&lt;br /&gt;
Retsensioon põhineb [[Meeskond:_Travo | Travo wikilehel]] seisuga 22:00 08.11.2015 ning disainiprotsessi pildil nr 3.&lt;br /&gt;
&lt;br /&gt;
Originaalne esituse aeg oli 9.november.&lt;br /&gt;
&lt;br /&gt;
==Sissejuhatus==&lt;br /&gt;
Travo idee on väga huvitav ja geniaalne. Kokku on pandud kaks lihtsat funktsionaalsust. Väga meeldib võimalus ülesanded märksõnadega grupeerida ja samal ajal  võimalus mõõta oma ajakulu. Travo on lihtne idee, mille vajadust esmapilgul ei näe, kuid kui kasutama harjud, siis enam ilma hakkama ei saa.&lt;br /&gt;
&lt;br /&gt;
Analüüs ise oli konkreetne: välja olid toodud ainult tähtsamad märksõnad ja disainiprotsessi pildid andsid infot juurde. Võrreldes kolmandat versiooni esimesega oli tore näha, et disain oli teinud suure hüppe. Samas tekitas analüüsi lakoonilisus ka palju küsimusi, sest funktsionaalsuste kohta ei olnud piisavalt informatsiooni. Lühidalt kirja pandud tekst oli erinevalt tõlgendatav ning jättis palju ruumi fantaasiale.&lt;br /&gt;
&lt;br /&gt;
==Küsitavad kohad analüüsis==&lt;br /&gt;
* Kui taimer käima pannakse, kas see “tiksub” serveris või brauseris?&lt;br /&gt;
* Kas samal ajal on võimalik kaks taimerit jooksma panna?&lt;br /&gt;
* Kas kulunud aega on võimalik hiljem muuta (taimer unustatakse käima)?&lt;br /&gt;
* Mis asi on disainiprotsessil nähtav ülesande kuupäev? Tekstiosas pole sellest sõnagi.&lt;br /&gt;
* Kuidas hallatakse märksõnu? Kuidas neid lisatakse? Kas muudetakse  värvi või teksti?&lt;br /&gt;
* Kas ühele ülesandele saab ka mitu märksõna külge panna?&lt;br /&gt;
* Kas märksõnade abil saab filtreerida?&lt;br /&gt;
* Disainis on näha, et märksõnad on ilusti ülesannete kohal ühes reas nähtaval. Mis saab, kui märksõnu tekib rohkem, kui sinna ära mahub?&lt;br /&gt;
* Kuidas ilma märksõnata loodud ülesanne välja näeb? Kas olemas on default märksõna?&lt;br /&gt;
* Nice to have listi all on “Veeru taskide värv muudetav kasutaja poolt”. Mida see tähendab? Või on see idee jäänuk eelmisest disainiprotsessist? &lt;br /&gt;
* Segaseks jääb, mis toimub ülesandega, kui ta valmis saab?  Märgitakse kuidagi tehtuks ja kaob töölaualt? Kas hiljem saab ta statistika lehelt tagasi töölauale “importida”?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Omapoolsed soovitused==&lt;br /&gt;
&#039;&#039;&#039;Must have listi&#039;&#039;&#039;&lt;br /&gt;
* Aja tagantjärgi sisestamine. Nt (23.06 16:00-23.06 18:00 tegutsesin selle ülesandega).&lt;br /&gt;
&#039;&#039;&#039;Nice to have listi&#039;&#039;&#039;&lt;br /&gt;
* Võimalus ülesandele lisada planeeritav ajakulu. &lt;br /&gt;
* Api, et saaks näiteks automatiseerida taski käivitamist. Käivitan visual studio ja automaatselt läheb vastav task käima.&lt;br /&gt;
* Kasutajate vahelised seosed (võimalik oma töölauda jagada või samal töölaual mitmekesi tööd teha).&lt;br /&gt;
* Võimalus saata oma mõne märksõna ajakulu iga kuu lõpus automaatselt meilile. Nt ülemusele.&lt;br /&gt;
* Töölaua/üksikute ülesannete import/eksport.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Kokkuvõte==&lt;br /&gt;
&lt;br /&gt;
Tahaks siinkohal välja tuua, et meie tervele grupile meeldis see idee väga ja meie arvates on see väga asjalik. Kui piisavalt produktiivseteks saame, siis äkki hakkame isegi kasutama. Samas analüüsis kasutatud lakooniline kirjaviis tekitas palju küsimusi ja lõppkokkuvõttes oli siiski raskem selget pilti saada sellest, kuidas täpselt kõik funktsionaalsused omavahel seotud on. Meie arvamus on, et see töö vajab veel läbimõtlemist ja analüüsimist, kuid loodame, et meie poolt pakutud tagasiside teeb selle analüüsi niivõrd lihtsaks, et Travo meeskond saab jalad seinale panna ja öelda ‘lebokeiss’. Jaksu!&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96931</id>
		<title>Meeskond: Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96931"/>
		<updated>2015-11-06T22:29:31Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Võimalikud funktsionaalsused (kui aega üle jääb) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== C# projekt Vajutuskunn==&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Meeskonna nimi: Lebokeiss OÜ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projekt=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteemi ja valitud programmide lühendite õppimise simuleerimise rakendus.&lt;br /&gt;
&lt;br /&gt;
=Meeskonna koosseis=&lt;br /&gt;
&lt;br /&gt;
*Iris Tambaum&lt;br /&gt;
*Kerli Edasi&lt;br /&gt;
*Joonas Jõeleht&lt;br /&gt;
*Timo Lanno&lt;br /&gt;
*Karell Veskimeister&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projektijuht: Joonas Jõeleht&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projektist=&lt;br /&gt;
&lt;br /&gt;
==Ülevaade==&lt;br /&gt;
Klaviatuuri kombinatsioonide simulatsiooni tarkvara, mis pakub kliendile võimalust mugavas ja stressivabas keskkonnas kiirelt omandada erinevaid kombinatsioone. Eesmärk on lühendada koolitustel erinevate käskude ja lühendite omandamise aega. Samal ajal ka pakkuda võimalust iseseisvalt arendada enda oskusi valitud keskkonnas. &lt;br /&gt;
&lt;br /&gt;
== Kasutatav .NET tehnoloogia ==&lt;br /&gt;
&lt;br /&gt;
Kasutatav raamistik: .NET Framework 4.5&lt;br /&gt;
&lt;br /&gt;
Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ&lt;br /&gt;
&lt;br /&gt;
Kasutatav arhetektuuriline muster: MVVM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Täpsemalt rakenduse tööst==&lt;br /&gt;
* Rakenduse valimine&lt;br /&gt;
Kasutaja valib endale rakenduse, kus ta soovib ennast arendada. Pakutakse välja olemasolev template ja kasutaja saab alustada õppimist.&lt;br /&gt;
* Rakenduse lühendite täiustamine&lt;br /&gt;
Kasutajal on võimalus lisada spetsiifilisemaid lühendeid, mida ta tahab harjutada ja endale selgeks teha.&lt;br /&gt;
===Idee kirjeldus===&lt;br /&gt;
&lt;br /&gt;
Tänapäeva inimene veedab oma päeva suures osas arvutis, kasutades erinevaid programme. Olgu selleks interneti brauser või tekstitöötlusprogramm. Me kõik teame, et igal programmil on olemas klahvide kiirkombinatsioonid, millega saab programmi efektiivsemalt kasutada, ent siiski me neid üleliia palju ei kasuta, sest kiirkombinatsioonid jäävad raskesti meelde ja neid on palju.&lt;br /&gt;
&lt;br /&gt;
Meie loodav programm on platvorm, mille esmane eesmärk on aidata kasutajal õppida erinevaid klahvikombinatsioone läbi testide lisamise ning vastavas testis olnud klahvikombinatsioonide harjutamise.&lt;br /&gt;
&lt;br /&gt;
Lisafunktsionaalsus, mida esimene etapp ei pruugi realiseerida, on arvestamine kasutaja ajalooga. Selle all mõtleme just valesti vajutatud/vastatud klahvikombinatsioone. Me sooviksime kindla algoritmi alusel valesti vajutatud klahvikombinatsioone kasutajale uuesti ülesandeks ette anda, et need kinnistuksid.&lt;br /&gt;
&lt;br /&gt;
===Mida rakendus endas sisaldab? (Mis võimalused seal on?)===&lt;br /&gt;
&lt;br /&gt;
Rakendus võimaldab luua kasutaja, kuid rakendust saab kasutada ka “külalisena”. Kasutaja saab luua enda tingimustele vastavaid teste, neid importida ja eksportida. Kasutaja eelis tavalise külalise ees on see, et kasutaja saab näha enda ülesannete statistikat ning arengut ja platvorm “kohandub” tema tegutsemisajaloo järgi ning soovitab treenida just neid klahvikombinatsioone, milles on rohkem eksitud. &lt;br /&gt;
&lt;br /&gt;
Teste saab teha rakenduse siseselt kättesaadavaks kõigile, (see tähendab, et need on kättesaadavad antud arvuti kasutajatele) või hoida privaatsena ehk kasutajaspetsiifilisena.  &lt;br /&gt;
	&lt;br /&gt;
Samuti saab teste meie platvormilt eksportida. Nii saavad teised kasutajad need testid oma programmi importida ja neid ka ise läbi teha. See funktsionaalsus võimaldab kasutajatel oma teste teistega jagada.&lt;br /&gt;
&lt;br /&gt;
===Milliste osade realiseerimine võib osutuda problemaatiliseks?===&lt;br /&gt;
&lt;br /&gt;
Probleemiks võib osutada Windowsis niinimetatud default klahvikombinatsioonide “üle kirjutamine” ja kättesaamine (näiteks klaviatuuril olev windows klahv avab windowsis igal juhul start menüü), kuid kuna meil on teadmine, et näiteks vmwares või virtualboxis olles on see funktsionaalsus edukalt üle kirjutatud, siis on see tehtav (märksõnaks võiks olla P/Invoke).&lt;br /&gt;
	&lt;br /&gt;
Problemaatiline võib olla ka efektiivse õppimisalgoritmi välja mõtlemine. Näiteks, kui tihti peaks soovitama kasutajal harjutada ja asju korrata, et asi kinnistuks. Samuti, kui tihti peaks laskma kasutajal harjutada klahvivajutusi, millega ta pole kordagi eksinud versus klahvivajutused, millega juba on eksitud. Eeskujuks loodame selle jaoks võtta programmi FullRecall ning teiseks märksõnaks võiks olla “Spaced Repetition” https://en.wikipedia.org/wiki/Spaced_repetition), kust saab samuti eeskuju võtta.&lt;br /&gt;
&lt;br /&gt;
==Funktsionaalsused==&lt;br /&gt;
===Planeeritavad funktsionaalsused===&lt;br /&gt;
&lt;br /&gt;
*Kasutajate haldamine (loomine, muutmine, kustutamine). &lt;br /&gt;
&lt;br /&gt;
*Kasutajarollid - tavakasutaja ei tohiks saada teist kasutajat muuta/kustutada.&lt;br /&gt;
&lt;br /&gt;
*Testide loomine, muutmine, kustutamine, eksportimine ja importimine.&lt;br /&gt;
&lt;br /&gt;
*Statistikamoodul - õigesti ning valesti vastatud küsimuste vaatamine sessiooni ajal (hetkeseis) ning pärast sessiooni (vahetult pärast äsja läbitud testi). Samuti on olemas kogu statistika (kõikide läbitud testide kohta).&lt;br /&gt;
&lt;br /&gt;
*Mõlemat pidi funktsionaalsus - alguses kuvatakse lühendi kirjeldus ning kasutaja vajutab vastuse või kuvatakse esimesena lühend ja siis kasutaja kirjeldab seda.&lt;br /&gt;
&lt;br /&gt;
*Abi nupp - abi nupule vajutades kuvatakse rippmenüü võimalike vastustega, (juhtub ka pärast kindla aja möödumist).&lt;br /&gt;
&lt;br /&gt;
*Vastuse nupp - kuvatakse õige vastus.&lt;br /&gt;
&lt;br /&gt;
*Treeningrežiim - näed kohe ka vastust, ent pead ikka õigeid klahve vajutama. Kasulik, kui alles importisid uue testi ja ei tea reaalselt ühtegi klahvikombinatsiooni.&lt;br /&gt;
&lt;br /&gt;
*Meie programmi õppetükk - kuna meie enda rakendusel on ka oma klahvikombinatsioonid, siis vaikimisi on lisatud meie rakenduse klahvikombinatsioonide õppetükk.&lt;br /&gt;
&lt;br /&gt;
*Pikemate klahvikombinatsioonide koos kasutamine - näiteks Ctrl+C ja Ctrl+V töötavad ühe vastusena ja vajalik on, et vajutatakse mõlemad ning õiges järjekorras.&lt;br /&gt;
&lt;br /&gt;
===Võimalikud funktsionaalsused (kui aega üle jääb)===&lt;br /&gt;
*Ajastatud kordamine, et teadmised kinnistuks paremini mällu. Niinimetatud “spaced repetition” (https://en.wikipedia.org/wiki/Spaced_repetition). Rakendus peaks soovitama, millal uuesti treenima peaks ning klahvikombinatsioonid, millega on rohkem eksitud, kuvataks tihedamini testides.&lt;br /&gt;
&lt;br /&gt;
*Asja mängulisemaks muutmiseks võib anda kasutajale võimaluse täita erinevaid “väljakutseid” ja nende täitmisel saaks märke. Näiteks “30 päeva järjest harjutamist”, “100 õiget järjest” jne.&lt;br /&gt;
&lt;br /&gt;
*Otsingufunktsionaalsus - võimalik otsida õppetükkidest kindlaid kombinatsioone ja lahendusi. Abiks siis, kui ei taha treenida, aga tahaks mõnda kombinatsiooni kiiresti leida ja muuta.&lt;br /&gt;
&lt;br /&gt;
*Eksportida/importida kasutaja ajalugu - saab näiteks oma ajaloo teise arvutisse viia ja jätkata oma treeninguid sealt, kus pooleli jäi.&lt;br /&gt;
&lt;br /&gt;
*Võimalus sisestada ka muid ülesandeid peale klahvikombinatsioonide. Näiteks raamatute autorite teadmine.&lt;br /&gt;
&lt;br /&gt;
*Erinevad ülesannete lahendamisviisid. Näiteks ajapiirang - mitu õiget järjest jms.&lt;br /&gt;
&lt;br /&gt;
*Enda tulemuste võrdlemine teiste kasutajate samade testide aegadega.&lt;br /&gt;
&lt;br /&gt;
*Koduleht, kus me haldame ja hoiame ülesandeid ning lokaalsetest rakendustest saab neid ülesandeid alla tõmmata/kasutaja saab märguande, kui uusi ülesandeid on lisatud.&lt;br /&gt;
&lt;br /&gt;
*Kasutaja konto on ühendatud kodulehega, nii et uues kohas sisse logides laetakse automaatselt alla kõik kasutaja seaded/ajalugu/testid.&lt;br /&gt;
&lt;br /&gt;
*Internetis olev edetabel, kus kasutajad saaksid end teiste kasutajatega võrrelda&lt;br /&gt;
&lt;br /&gt;
*Multiplatvormne lahendus: Windows, Mac ja Linux(common distributions) support.&lt;br /&gt;
&lt;br /&gt;
=Kokkusaamiste logid=&lt;br /&gt;
==Algus==&lt;br /&gt;
31.10 Saime kõik ka reaalselt kokku ja vaatasime, mida keegi avastanud oli ning tegime alguse analüüsi kirjutamisega.&lt;br /&gt;
&lt;br /&gt;
Iris oli avastanud meie projektile sarnase lehekülje https://www.shortcutfoo.com/ mille miinuseks võib tuua, et sinna ei saa oma harjutusi sisse importida.. ent plussiks on lihtne kasutajaliides ja palju erinevaid treeninguvariante. &lt;br /&gt;
&lt;br /&gt;
Timo näitas lehte http://fullrecall.com/ millest võiks eeskuju võtta just intervallide mõttes, et kui tihti peaks inimene asju kordama, et need kinnistuks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
25.10 Kohtusime virtuaalselt telegrammi vahendusel. Lõime meeskonnale Team Foundation Service&#039;i konto ning tutvusime võimalustega. &lt;br /&gt;
&lt;br /&gt;
Järgmiseks reaalseks kogunemiseks sai määratud 30. okt. Igale meeskonna liikmele sai ka projektijuhi poolt antud väike kont järada, et reedel saaksime olla konstruktiivsemad.&lt;br /&gt;
&#039;&#039;&#039;Järatavad kondid:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Karell - uurib, millised oleks Windows Presentation Foundationis kujundus võimalused ja piirangud näiteks kas me saame oma applicationi muu kujulise kui kast teha? Värvipiirangud? Popupid?&lt;br /&gt;
&lt;br /&gt;
Kerly-Timo - mõtlevad natuke vaadete kujunduse peale.. või üldiselt milline meie programm võiks väliselt välja näha.&lt;br /&gt;
&lt;br /&gt;
Iris uurib netis teisi sarnaseid programme/või kodulehti.. et palju neid olemas juba on, mis funktsionaalsust me neilt üle võiks võtta ning mis on nende puudused, mis meie programmis võiks olla lahendatud.&lt;br /&gt;
&lt;br /&gt;
Joonas uurib seda kuidas c sharpis ära kaaperdada kõik klahvivajutused, ka windowsi enda omad.. &lt;br /&gt;
&lt;br /&gt;
Samuti võiksid kõik meeskonnaliikmed uurida TFS võimalusi. Veidi ringi klikata ja keskkonnaga tutvuda. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
22.10&lt;br /&gt;
Saime esimest korda kokku ja genereerisime erinevaid ideid, millest kolm olid kõige huvitavamad. Neist valisime siis välja parima - Vajutuskunn.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96929</id>
		<title>Meeskond: Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96929"/>
		<updated>2015-11-06T22:27:56Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Planeeritavad funktsionaalsused */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== C# projekt Vajutuskunn==&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Meeskonna nimi: Lebokeiss OÜ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projekt=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteemi ja valitud programmide lühendite õppimise simuleerimise rakendus.&lt;br /&gt;
&lt;br /&gt;
=Meeskonna koosseis=&lt;br /&gt;
&lt;br /&gt;
*Iris Tambaum&lt;br /&gt;
*Kerli Edasi&lt;br /&gt;
*Joonas Jõeleht&lt;br /&gt;
*Timo Lanno&lt;br /&gt;
*Karell Veskimeister&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projektijuht: Joonas Jõeleht&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projektist=&lt;br /&gt;
&lt;br /&gt;
==Ülevaade==&lt;br /&gt;
Klaviatuuri kombinatsioonide simulatsiooni tarkvara, mis pakub kliendile võimalust mugavas ja stressivabas keskkonnas kiirelt omandada erinevaid kombinatsioone. Eesmärk on lühendada koolitustel erinevate käskude ja lühendite omandamise aega. Samal ajal ka pakkuda võimalust iseseisvalt arendada enda oskusi valitud keskkonnas. &lt;br /&gt;
&lt;br /&gt;
== Kasutatav .NET tehnoloogia ==&lt;br /&gt;
&lt;br /&gt;
Kasutatav raamistik: .NET Framework 4.5&lt;br /&gt;
&lt;br /&gt;
Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ&lt;br /&gt;
&lt;br /&gt;
Kasutatav arhetektuuriline muster: MVVM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Täpsemalt rakenduse tööst==&lt;br /&gt;
* Rakenduse valimine&lt;br /&gt;
Kasutaja valib endale rakenduse, kus ta soovib ennast arendada. Pakutakse välja olemasolev template ja kasutaja saab alustada õppimist.&lt;br /&gt;
* Rakenduse lühendite täiustamine&lt;br /&gt;
Kasutajal on võimalus lisada spetsiifilisemaid lühendeid, mida ta tahab harjutada ja endale selgeks teha.&lt;br /&gt;
===Idee kirjeldus===&lt;br /&gt;
&lt;br /&gt;
Tänapäeva inimene veedab oma päeva suures osas arvutis, kasutades erinevaid programme. Olgu selleks interneti brauser või tekstitöötlusprogramm. Me kõik teame, et igal programmil on olemas klahvide kiirkombinatsioonid, millega saab programmi efektiivsemalt kasutada, ent siiski me neid üleliia palju ei kasuta, sest kiirkombinatsioonid jäävad raskesti meelde ja neid on palju.&lt;br /&gt;
&lt;br /&gt;
Meie loodav programm on platvorm, mille esmane eesmärk on aidata kasutajal õppida erinevaid klahvikombinatsioone läbi testide lisamise ning vastavas testis olnud klahvikombinatsioonide harjutamise.&lt;br /&gt;
&lt;br /&gt;
Lisafunktsionaalsus, mida esimene etapp ei pruugi realiseerida, on arvestamine kasutaja ajalooga. Selle all mõtleme just valesti vajutatud/vastatud klahvikombinatsioone. Me sooviksime kindla algoritmi alusel valesti vajutatud klahvikombinatsioone kasutajale uuesti ülesandeks ette anda, et need kinnistuksid.&lt;br /&gt;
&lt;br /&gt;
===Mida rakendus endas sisaldab? (Mis võimalused seal on?)===&lt;br /&gt;
&lt;br /&gt;
Rakendus võimaldab luua kasutaja, kuid rakendust saab kasutada ka “külalisena”. Kasutaja saab luua enda tingimustele vastavaid teste, neid importida ja eksportida. Kasutaja eelis tavalise külalise ees on see, et kasutaja saab näha enda ülesannete statistikat ning arengut ja platvorm “kohandub” tema tegutsemisajaloo järgi ning soovitab treenida just neid klahvikombinatsioone, milles on rohkem eksitud. &lt;br /&gt;
&lt;br /&gt;
Teste saab teha rakenduse siseselt kättesaadavaks kõigile, (see tähendab, et need on kättesaadavad antud arvuti kasutajatele) või hoida privaatsena ehk kasutajaspetsiifilisena.  &lt;br /&gt;
	&lt;br /&gt;
Samuti saab teste meie platvormilt eksportida. Nii saavad teised kasutajad need testid oma programmi importida ja neid ka ise läbi teha. See funktsionaalsus võimaldab kasutajatel oma teste teistega jagada.&lt;br /&gt;
&lt;br /&gt;
===Milliste osade realiseerimine võib osutuda problemaatiliseks?===&lt;br /&gt;
&lt;br /&gt;
Probleemiks võib osutada Windowsis niinimetatud default klahvikombinatsioonide “üle kirjutamine” ja kättesaamine (näiteks klaviatuuril olev windows klahv avab windowsis igal juhul start menüü), kuid kuna meil on teadmine, et näiteks vmwares või virtualboxis olles on see funktsionaalsus edukalt üle kirjutatud, siis on see tehtav (märksõnaks võiks olla P/Invoke).&lt;br /&gt;
	&lt;br /&gt;
Problemaatiline võib olla ka efektiivse õppimisalgoritmi välja mõtlemine. Näiteks, kui tihti peaks soovitama kasutajal harjutada ja asju korrata, et asi kinnistuks. Samuti, kui tihti peaks laskma kasutajal harjutada klahvivajutusi, millega ta pole kordagi eksinud versus klahvivajutused, millega juba on eksitud. Eeskujuks loodame selle jaoks võtta programmi FullRecall ning teiseks märksõnaks võiks olla “Spaced Repetition” https://en.wikipedia.org/wiki/Spaced_repetition), kust saab samuti eeskuju võtta.&lt;br /&gt;
&lt;br /&gt;
==Funktsionaalsused==&lt;br /&gt;
===Planeeritavad funktsionaalsused===&lt;br /&gt;
&lt;br /&gt;
*Kasutajate haldamine (loomine, muutmine, kustutamine). &lt;br /&gt;
&lt;br /&gt;
*Kasutajarollid - tavakasutaja ei tohiks saada teist kasutajat muuta/kustutada.&lt;br /&gt;
&lt;br /&gt;
*Testide loomine, muutmine, kustutamine, eksportimine ja importimine.&lt;br /&gt;
&lt;br /&gt;
*Statistikamoodul - õigesti ning valesti vastatud küsimuste vaatamine sessiooni ajal (hetkeseis) ning pärast sessiooni (vahetult pärast äsja läbitud testi). Samuti on olemas kogu statistika (kõikide läbitud testide kohta).&lt;br /&gt;
&lt;br /&gt;
*Mõlemat pidi funktsionaalsus - alguses kuvatakse lühendi kirjeldus ning kasutaja vajutab vastuse või kuvatakse esimesena lühend ja siis kasutaja kirjeldab seda.&lt;br /&gt;
&lt;br /&gt;
*Abi nupp - abi nupule vajutades kuvatakse rippmenüü võimalike vastustega, (juhtub ka pärast kindla aja möödumist).&lt;br /&gt;
&lt;br /&gt;
*Vastuse nupp - kuvatakse õige vastus.&lt;br /&gt;
&lt;br /&gt;
*Treeningrežiim - näed kohe ka vastust, ent pead ikka õigeid klahve vajutama. Kasulik, kui alles importisid uue testi ja ei tea reaalselt ühtegi klahvikombinatsiooni.&lt;br /&gt;
&lt;br /&gt;
*Meie programmi õppetükk - kuna meie enda rakendusel on ka oma klahvikombinatsioonid, siis vaikimisi on lisatud meie rakenduse klahvikombinatsioonide õppetükk.&lt;br /&gt;
&lt;br /&gt;
*Pikemate klahvikombinatsioonide koos kasutamine - näiteks Ctrl+C ja Ctrl+V töötavad ühe vastusena ja vajalik on, et vajutatakse mõlemad ning õiges järjekorras.&lt;br /&gt;
&lt;br /&gt;
===Võimalikud funktsionaalsused (kui aega üle jääb)===&lt;br /&gt;
*Ajastatud kordamine, et teadmised kinnistuks paremini mällu. Niinimetatud “spaced repetition” (https://en.wikipedia.org/wiki/Spaced_repetition). Rakendus peaks soovitama, millal uuesti treenima peaks ning klahvikombinatsioonid, millega on rohkem eksitud, kuvataks tihedamini testides.&lt;br /&gt;
&lt;br /&gt;
*Asja mängulisemaks muutmiseks võib anda kasutajale võimaluse täita erinevaid “väljakutseid” ja nende täitmisel saaks märke. Näiteks “30 päeva järjest harjutamist”, “100 õiget järjest” jne.&lt;br /&gt;
&lt;br /&gt;
*Otsingufunktsionaalsus - võimalik otsida õppetükkidest kindlaid kombinatsioone ja lahendusi. Abiks siis, kui ei taha treenida, aga tahaks mõnda kombinatsiooni kiiresti leida ja muuta.&lt;br /&gt;
&lt;br /&gt;
*Eksportida/importida kasutaja ajalugu - saab näiteks oma ajaloo teise arvutisse viia ja jätkata oma treeninguid sealt, kus pooleli jäi.&lt;br /&gt;
&lt;br /&gt;
*Võimalus sisestada ka muid ülesandeid kui ainult klahvikombinatsioone. Näiteks raamatute autorite teadmine.&lt;br /&gt;
&lt;br /&gt;
*Erinevad ülesannete lahendamisviisid. Näiteks ajapiirang - mitu õiget järjest jms.&lt;br /&gt;
&lt;br /&gt;
*Enda tulemuste võrdlemine teiste kasutajate samade testide aegadega.&lt;br /&gt;
&lt;br /&gt;
*Koduleht, kus me haldame ja hoiame ülesandeid ning lokaalsetest rakendustest saab neid ülesandeid alla tõmmata/kasutaja saab märguande, kui uusi ülesandeid on lisatud.&lt;br /&gt;
&lt;br /&gt;
*Kasutaja konto on ühendatud kodulehega, nii et kui uues kohas sisse logib siis automaatselt laetakse alla kõik kasutaja seaded/ajalugu/testid.&lt;br /&gt;
&lt;br /&gt;
*Internetis olev edetabel, kus kasutajad saaksid end teiste kasutajatega võrrelda&lt;br /&gt;
&lt;br /&gt;
*Multiplatvormne lahendus: Windows, Mac ja Linux(common distributions) support.&lt;br /&gt;
&lt;br /&gt;
=Kokkusaamiste logid=&lt;br /&gt;
==Algus==&lt;br /&gt;
31.10 Saime kõik ka reaalselt kokku ja vaatasime, mida keegi avastanud oli ning tegime alguse analüüsi kirjutamisega.&lt;br /&gt;
&lt;br /&gt;
Iris oli avastanud meie projektile sarnase lehekülje https://www.shortcutfoo.com/ mille miinuseks võib tuua, et sinna ei saa oma harjutusi sisse importida.. ent plussiks on lihtne kasutajaliides ja palju erinevaid treeninguvariante. &lt;br /&gt;
&lt;br /&gt;
Timo näitas lehte http://fullrecall.com/ millest võiks eeskuju võtta just intervallide mõttes, et kui tihti peaks inimene asju kordama, et need kinnistuks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
25.10 Kohtusime virtuaalselt telegrammi vahendusel. Lõime meeskonnale Team Foundation Service&#039;i konto ning tutvusime võimalustega. &lt;br /&gt;
&lt;br /&gt;
Järgmiseks reaalseks kogunemiseks sai määratud 30. okt. Igale meeskonna liikmele sai ka projektijuhi poolt antud väike kont järada, et reedel saaksime olla konstruktiivsemad.&lt;br /&gt;
&#039;&#039;&#039;Järatavad kondid:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Karell - uurib, millised oleks Windows Presentation Foundationis kujundus võimalused ja piirangud näiteks kas me saame oma applicationi muu kujulise kui kast teha? Värvipiirangud? Popupid?&lt;br /&gt;
&lt;br /&gt;
Kerly-Timo - mõtlevad natuke vaadete kujunduse peale.. või üldiselt milline meie programm võiks väliselt välja näha.&lt;br /&gt;
&lt;br /&gt;
Iris uurib netis teisi sarnaseid programme/või kodulehti.. et palju neid olemas juba on, mis funktsionaalsust me neilt üle võiks võtta ning mis on nende puudused, mis meie programmis võiks olla lahendatud.&lt;br /&gt;
&lt;br /&gt;
Joonas uurib seda kuidas c sharpis ära kaaperdada kõik klahvivajutused, ka windowsi enda omad.. &lt;br /&gt;
&lt;br /&gt;
Samuti võiksid kõik meeskonnaliikmed uurida TFS võimalusi. Veidi ringi klikata ja keskkonnaga tutvuda. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
22.10&lt;br /&gt;
Saime esimest korda kokku ja genereerisime erinevaid ideid, millest kolm olid kõige huvitavamad. Neist valisime siis välja parima - Vajutuskunn.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96923</id>
		<title>Meeskond: Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96923"/>
		<updated>2015-11-06T22:19:47Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Milliste osade realiseerimine võib osutuda problemaatiliseks? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== C# projekt Vajutuskunn==&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Meeskonna nimi: Lebokeiss OÜ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projekt=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteemi ja valitud programmide lühendite õppimise simuleerimise rakendus.&lt;br /&gt;
&lt;br /&gt;
=Meeskonna koosseis=&lt;br /&gt;
&lt;br /&gt;
*Iris Tambaum&lt;br /&gt;
*Kerli Edasi&lt;br /&gt;
*Joonas Jõeleht&lt;br /&gt;
*Timo Lanno&lt;br /&gt;
*Karell Veskimeister&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projektijuht: Joonas Jõeleht&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projektist=&lt;br /&gt;
&lt;br /&gt;
==Ülevaade==&lt;br /&gt;
Klaviatuuri kombinatsioonide simulatsiooni tarkvara, mis pakub kliendile võimalust mugavas ja stressivabas keskkonnas kiirelt omandada erinevaid kombinatsioone. Eesmärk on lühendada koolitustel erinevate käskude ja lühendite omandamise aega. Samal ajal ka pakkuda võimalust iseseisvalt arendada enda oskusi valitud keskkonnas. &lt;br /&gt;
&lt;br /&gt;
== Kasutatav .NET tehnoloogia ==&lt;br /&gt;
&lt;br /&gt;
Kasutatav raamistik: .NET Framework 4.5&lt;br /&gt;
&lt;br /&gt;
Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ&lt;br /&gt;
&lt;br /&gt;
Kasutatav arhetektuuriline muster: MVVM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Täpsemalt rakenduse tööst==&lt;br /&gt;
* Rakenduse valimine&lt;br /&gt;
Kasutaja valib endale rakenduse, kus ta soovib ennast arendada. Pakutakse välja olemasolev template ja kasutaja saab alustada õppimist.&lt;br /&gt;
* Rakenduse lühendite täiustamine&lt;br /&gt;
Kasutajal on võimalus lisada spetsiifilisemaid lühendeid, mida ta tahab harjutada ja endale selgeks teha.&lt;br /&gt;
===Idee kirjeldus===&lt;br /&gt;
&lt;br /&gt;
Tänapäeva inimene veedab oma päeva suures osas arvutis, kasutades erinevaid programme. Olgu selleks interneti brauser või tekstitöötlusprogramm. Me kõik teame, et igal programmil on olemas klahvide kiirkombinatsioonid, millega saab programmi efektiivsemalt kasutada, ent siiski me neid üleliia palju ei kasuta, sest kiirkombinatsioonid jäävad raskesti meelde ja neid on palju.&lt;br /&gt;
&lt;br /&gt;
Meie loodav programm on platvorm, mille esmane eesmärk on aidata kasutajal õppida erinevaid klahvikombinatsioone läbi testide lisamise ning vastavas testis olnud klahvikombinatsioonide harjutamise.&lt;br /&gt;
&lt;br /&gt;
Lisafunktsionaalsus, mida esimene etapp ei pruugi realiseerida, on arvestamine kasutaja ajalooga. Selle all mõtleme just valesti vajutatud/vastatud klahvikombinatsioone. Me sooviksime kindla algoritmi alusel valesti vajutatud klahvikombinatsioone kasutajale uuesti ülesandeks ette anda, et need kinnistuksid.&lt;br /&gt;
&lt;br /&gt;
===Mida rakendus endas sisaldab? (Mis võimalused seal on?)===&lt;br /&gt;
&lt;br /&gt;
Rakendus võimaldab luua kasutaja, kuid rakendust saab kasutada ka “külalisena”. Kasutaja saab luua enda tingimustele vastavaid teste, neid importida ja eksportida. Kasutaja eelis tavalise külalise ees on see, et kasutaja saab näha enda ülesannete statistikat ning arengut ja platvorm “kohandub” tema tegutsemisajaloo järgi ning soovitab treenida just neid klahvikombinatsioone, milles on rohkem eksitud. &lt;br /&gt;
&lt;br /&gt;
Teste saab teha rakenduse siseselt kättesaadavaks kõigile, (see tähendab, et need on kättesaadavad antud arvuti kasutajatele) või hoida privaatsena ehk kasutajaspetsiifilisena.  &lt;br /&gt;
	&lt;br /&gt;
Samuti saab teste meie platvormilt eksportida. Nii saavad teised kasutajad need testid oma programmi importida ja neid ka ise läbi teha. See funktsionaalsus võimaldab kasutajatel oma teste teistega jagada.&lt;br /&gt;
&lt;br /&gt;
===Milliste osade realiseerimine võib osutuda problemaatiliseks?===&lt;br /&gt;
&lt;br /&gt;
Probleemiks võib osutada Windowsis niinimetatud default klahvikombinatsioonide “üle kirjutamine” ja kättesaamine (näiteks klaviatuuril olev windows klahv avab windowsis igal juhul start menüü), kuid kuna meil on teadmine, et näiteks vmwares või virtualboxis olles on see funktsionaalsus edukalt üle kirjutatud, siis on see tehtav (märksõnaks võiks olla P/Invoke).&lt;br /&gt;
	&lt;br /&gt;
Problemaatiline võib olla ka efektiivse õppimisalgoritmi välja mõtlemine. Näiteks, kui tihti peaks soovitama kasutajal harjutada ja asju korrata, et asi kinnistuks. Samuti, kui tihti peaks laskma kasutajal harjutada klahvivajutusi, millega ta pole kordagi eksinud versus klahvivajutused, millega juba on eksitud. Eeskujuks loodame selle jaoks võtta programmi FullRecall ning teiseks märksõnaks võiks olla “Spaced Repetition” https://en.wikipedia.org/wiki/Spaced_repetition), kust saab samuti eeskuju võtta.&lt;br /&gt;
&lt;br /&gt;
==Funktsionaalsused==&lt;br /&gt;
===Planeeritavad funktsionaalsused===&lt;br /&gt;
&lt;br /&gt;
*Kasutajate haldamine (loomine, muutmine, kustutamine). &lt;br /&gt;
&lt;br /&gt;
*Kasutajarollid - tavakasutaja ei tohiks saada teist kasutajat muuta/kustutada.&lt;br /&gt;
&lt;br /&gt;
*Testide loomine, muutmine, kustutamine, eksportimine ja importimine.&lt;br /&gt;
&lt;br /&gt;
*Statistikamoodul - õigesti ning valesti vastatud küsimuste vaatamine nii sessiooni kui kogu harjutusaja lõikes.&lt;br /&gt;
&lt;br /&gt;
*Mõlemat pidi funktsionaalsus - alguses kuvatakse lühendi kirjeldus ja siis kasutaja vajutab vastuse või kuvatakse esimesena lühend ja siis kasutaja kirjeldab seda.&lt;br /&gt;
&lt;br /&gt;
*Abi nupp - abi nupule vajutamist kuvatakse rippmenüü võimalikest vastustest, (juhtub ka pärast kindla aja möödumist).&lt;br /&gt;
&lt;br /&gt;
*Vastuse nupp - kuvatakse õige vastus.&lt;br /&gt;
&lt;br /&gt;
*Treeningrežiim - näed kohe ka vastust, ent pead ikka õigeid klahve vajutama. Kasulik, kui alles importisid uue testi sisse ja ei tea reaalselt ühtegi klahvikombinatsiooni.&lt;br /&gt;
&lt;br /&gt;
*Meie programmi õppetükk - kuna meie enda rakendusel on ka oma klahvikombinatsioonid, siis vaikimisi on lisatud meie rakenduse klahvikombinatsioonide õppetükk.&lt;br /&gt;
&lt;br /&gt;
*Pikemate klahvikombinatsioonide koos kasutamine. Näiteks Ctrl+C ja Ctrl+V töötavad ühe vastusena ja vajalik on, et vajutatakse mõlemad ning õiges järjekorras.&lt;br /&gt;
&lt;br /&gt;
===Võimalikud funktsionaalsused (kui aega üle jääb)===&lt;br /&gt;
*Ajastatud kordamine, et teadmised kinnistuks paremini mällu. Niinimetatud “spaced repetition” (https://en.wikipedia.org/wiki/Spaced_repetition). Rakendus peaks soovitama, millal uuesti treenima peaks ning klahvikombinatsioonid, millega on rohkem eksitud, kuvataks tihedamini testides.&lt;br /&gt;
&lt;br /&gt;
*Asja mängulisemaks muutmiseks võib anda kasutajale võimaluse täita erinevaid “väljakutseid” ja nende täitmisel saaks märke. Näiteks “30 päeva järjest harjutamist”, “100 õiget järjest” jne.&lt;br /&gt;
&lt;br /&gt;
*Otsingufunktsionaalsus - võimalik otsida õppetükkidest kindlaid kombinatsioone ja lahendusi. Abiks siis, kui ei taha treenida, aga tahaks mõnda kombinatsiooni kiiresti leida ja muuta.&lt;br /&gt;
&lt;br /&gt;
*Eksportida/importida kasutaja ajalugu - saab näiteks oma ajaloo teise arvutisse viia ja jätkata oma treeninguid sealt, kus pooleli jäi.&lt;br /&gt;
&lt;br /&gt;
*Võimalus sisestada ka muid ülesandeid kui ainult klahvikombinatsioone. Näiteks raamatute autorite teadmine.&lt;br /&gt;
&lt;br /&gt;
*Erinevad ülesannete lahendamisviisid. Näiteks ajapiirang - mitu õiget järjest jms.&lt;br /&gt;
&lt;br /&gt;
*Enda tulemuste võrdlemine teiste kasutajate samade testide aegadega.&lt;br /&gt;
&lt;br /&gt;
*Koduleht, kus me haldame ja hoiame ülesandeid ning lokaalsetest rakendustest saab neid ülesandeid alla tõmmata/kasutaja saab märguande, kui uusi ülesandeid on lisatud.&lt;br /&gt;
&lt;br /&gt;
*Kasutaja konto on ühendatud kodulehega, nii et kui uues kohas sisse logib siis automaatselt laetakse alla kõik kasutaja seaded/ajalugu/testid.&lt;br /&gt;
&lt;br /&gt;
*Internetis olev edetabel, kus kasutajad saaksid end teiste kasutajatega võrrelda&lt;br /&gt;
&lt;br /&gt;
*Multiplatvormne lahendus: Windows, Mac ja Linux(common distributions) support.&lt;br /&gt;
&lt;br /&gt;
=Kokkusaamiste logid=&lt;br /&gt;
==Algus==&lt;br /&gt;
31.10 Saime kõik ka reaalselt kokku ja vaatasime, mida keegi avastanud oli ning tegime alguse analüüsi kirjutamisega.&lt;br /&gt;
&lt;br /&gt;
Iris oli avastanud meie projektile sarnase lehekülje https://www.shortcutfoo.com/ mille miinuseks võib tuua, et sinna ei saa oma harjutusi sisse importida.. ent plussiks on lihtne kasutajaliides ja palju erinevaid treeninguvariante. &lt;br /&gt;
&lt;br /&gt;
Timo näitas lehte http://fullrecall.com/ millest võiks eeskuju võtta just intervallide mõttes, et kui tihti peaks inimene asju kordama, et need kinnistuks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
25.10 Kohtusime virtuaalselt telegrammi vahendusel. Lõime meeskonnale Team Foundation Service&#039;i konto ning tutvusime võimalustega. &lt;br /&gt;
&lt;br /&gt;
Järgmiseks reaalseks kogunemiseks sai määratud 30. okt. Igale meeskonna liikmele sai ka projektijuhi poolt antud väike kont järada, et reedel saaksime olla konstruktiivsemad.&lt;br /&gt;
&#039;&#039;&#039;Järatavad kondid:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Karell - uurib, millised oleks Windows Presentation Foundationis kujundus võimalused ja piirangud näiteks kas me saame oma applicationi muu kujulise kui kast teha? Värvipiirangud? Popupid?&lt;br /&gt;
&lt;br /&gt;
Kerly-Timo - mõtlevad natuke vaadete kujunduse peale.. või üldiselt milline meie programm võiks väliselt välja näha.&lt;br /&gt;
&lt;br /&gt;
Iris uurib netis teisi sarnaseid programme/või kodulehti.. et palju neid olemas juba on, mis funktsionaalsust me neilt üle võiks võtta ning mis on nende puudused, mis meie programmis võiks olla lahendatud.&lt;br /&gt;
&lt;br /&gt;
Joonas uurib seda kuidas c sharpis ära kaaperdada kõik klahvivajutused, ka windowsi enda omad.. &lt;br /&gt;
&lt;br /&gt;
Samuti võiksid kõik meeskonnaliikmed uurida TFS võimalusi. Veidi ringi klikata ja keskkonnaga tutvuda. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
22.10&lt;br /&gt;
Saime esimest korda kokku ja genereerisime erinevaid ideid, millest kolm olid kõige huvitavamad. Neist valisime siis välja parima - Vajutuskunn.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96922</id>
		<title>Meeskond: Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96922"/>
		<updated>2015-11-06T22:19:21Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Mida rakendus endas sisaldab? (Mis võimalused seal on?) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== C# projekt Vajutuskunn==&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Meeskonna nimi: Lebokeiss OÜ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projekt=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteemi ja valitud programmide lühendite õppimise simuleerimise rakendus.&lt;br /&gt;
&lt;br /&gt;
=Meeskonna koosseis=&lt;br /&gt;
&lt;br /&gt;
*Iris Tambaum&lt;br /&gt;
*Kerli Edasi&lt;br /&gt;
*Joonas Jõeleht&lt;br /&gt;
*Timo Lanno&lt;br /&gt;
*Karell Veskimeister&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projektijuht: Joonas Jõeleht&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projektist=&lt;br /&gt;
&lt;br /&gt;
==Ülevaade==&lt;br /&gt;
Klaviatuuri kombinatsioonide simulatsiooni tarkvara, mis pakub kliendile võimalust mugavas ja stressivabas keskkonnas kiirelt omandada erinevaid kombinatsioone. Eesmärk on lühendada koolitustel erinevate käskude ja lühendite omandamise aega. Samal ajal ka pakkuda võimalust iseseisvalt arendada enda oskusi valitud keskkonnas. &lt;br /&gt;
&lt;br /&gt;
== Kasutatav .NET tehnoloogia ==&lt;br /&gt;
&lt;br /&gt;
Kasutatav raamistik: .NET Framework 4.5&lt;br /&gt;
&lt;br /&gt;
Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ&lt;br /&gt;
&lt;br /&gt;
Kasutatav arhetektuuriline muster: MVVM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Täpsemalt rakenduse tööst==&lt;br /&gt;
* Rakenduse valimine&lt;br /&gt;
Kasutaja valib endale rakenduse, kus ta soovib ennast arendada. Pakutakse välja olemasolev template ja kasutaja saab alustada õppimist.&lt;br /&gt;
* Rakenduse lühendite täiustamine&lt;br /&gt;
Kasutajal on võimalus lisada spetsiifilisemaid lühendeid, mida ta tahab harjutada ja endale selgeks teha.&lt;br /&gt;
===Idee kirjeldus===&lt;br /&gt;
&lt;br /&gt;
Tänapäeva inimene veedab oma päeva suures osas arvutis, kasutades erinevaid programme. Olgu selleks interneti brauser või tekstitöötlusprogramm. Me kõik teame, et igal programmil on olemas klahvide kiirkombinatsioonid, millega saab programmi efektiivsemalt kasutada, ent siiski me neid üleliia palju ei kasuta, sest kiirkombinatsioonid jäävad raskesti meelde ja neid on palju.&lt;br /&gt;
&lt;br /&gt;
Meie loodav programm on platvorm, mille esmane eesmärk on aidata kasutajal õppida erinevaid klahvikombinatsioone läbi testide lisamise ning vastavas testis olnud klahvikombinatsioonide harjutamise.&lt;br /&gt;
&lt;br /&gt;
Lisafunktsionaalsus, mida esimene etapp ei pruugi realiseerida, on arvestamine kasutaja ajalooga. Selle all mõtleme just valesti vajutatud/vastatud klahvikombinatsioone. Me sooviksime kindla algoritmi alusel valesti vajutatud klahvikombinatsioone kasutajale uuesti ülesandeks ette anda, et need kinnistuksid.&lt;br /&gt;
&lt;br /&gt;
===Mida rakendus endas sisaldab? (Mis võimalused seal on?)===&lt;br /&gt;
&lt;br /&gt;
Rakendus võimaldab luua kasutaja, kuid rakendust saab kasutada ka “külalisena”. Kasutaja saab luua enda tingimustele vastavaid teste, neid importida ja eksportida. Kasutaja eelis tavalise külalise ees on see, et kasutaja saab näha enda ülesannete statistikat ning arengut ja platvorm “kohandub” tema tegutsemisajaloo järgi ning soovitab treenida just neid klahvikombinatsioone, milles on rohkem eksitud. &lt;br /&gt;
&lt;br /&gt;
Teste saab teha rakenduse siseselt kättesaadavaks kõigile, (see tähendab, et need on kättesaadavad antud arvuti kasutajatele) või hoida privaatsena ehk kasutajaspetsiifilisena.  &lt;br /&gt;
	&lt;br /&gt;
Samuti saab teste meie platvormilt eksportida. Nii saavad teised kasutajad need testid oma programmi importida ja neid ka ise läbi teha. See funktsionaalsus võimaldab kasutajatel oma teste teistega jagada.&lt;br /&gt;
&lt;br /&gt;
===Milliste osade realiseerimine võib osutuda problemaatiliseks?===&lt;br /&gt;
&lt;br /&gt;
Probleemiks võib osutada Windowsis niinimetatud default klahvikombinatsioonide “üle kirjutamine” ja kättesaamine, (näiteks klaviatuuril olev windows klahv avab windowsis igal juhul start menüü) aga kuna meil on teadmine, et näiteks vmwares või virtualboxis olles on see funktsionaalsus edukalt üle kirjutatud, siis on see tehtav (märksõnaks võiks olla P/Invoke).&lt;br /&gt;
	&lt;br /&gt;
Problemaatiline võib olla ka efektiivse õppimisalgoritmi välja mõtlemine. Näiteks kui tihti peaks soovitama kasutajal harjutada ja asju korrata, et asi kinnistuks. Samuti, kui tihti peaks laskma kasutajal harjutada klahvivajutusi, millega ta pole kordagi eksinud versus klahvivajutused, millega juba on eksitud. Eeskujuks loodame võtta sellel ajal programmi fullrecall ning teiseks märksõnaks võiks olla “Spaced Repetition” https://en.wikipedia.org/wiki/Spaced_repetition) kust saab eeskuju võtta.&lt;br /&gt;
&lt;br /&gt;
==Funktsionaalsused==&lt;br /&gt;
===Planeeritavad funktsionaalsused===&lt;br /&gt;
&lt;br /&gt;
*Kasutajate haldamine (loomine, muutmine, kustutamine). &lt;br /&gt;
&lt;br /&gt;
*Kasutajarollid - tavakasutaja ei tohiks saada teist kasutajat muuta/kustutada.&lt;br /&gt;
&lt;br /&gt;
*Testide loomine, muutmine, kustutamine, eksportimine ja importimine.&lt;br /&gt;
&lt;br /&gt;
*Statistikamoodul - õigesti ning valesti vastatud küsimuste vaatamine nii sessiooni kui kogu harjutusaja lõikes.&lt;br /&gt;
&lt;br /&gt;
*Mõlemat pidi funktsionaalsus - alguses kuvatakse lühendi kirjeldus ja siis kasutaja vajutab vastuse või kuvatakse esimesena lühend ja siis kasutaja kirjeldab seda.&lt;br /&gt;
&lt;br /&gt;
*Abi nupp - abi nupule vajutamist kuvatakse rippmenüü võimalikest vastustest, (juhtub ka pärast kindla aja möödumist).&lt;br /&gt;
&lt;br /&gt;
*Vastuse nupp - kuvatakse õige vastus.&lt;br /&gt;
&lt;br /&gt;
*Treeningrežiim - näed kohe ka vastust, ent pead ikka õigeid klahve vajutama. Kasulik, kui alles importisid uue testi sisse ja ei tea reaalselt ühtegi klahvikombinatsiooni.&lt;br /&gt;
&lt;br /&gt;
*Meie programmi õppetükk - kuna meie enda rakendusel on ka oma klahvikombinatsioonid, siis vaikimisi on lisatud meie rakenduse klahvikombinatsioonide õppetükk.&lt;br /&gt;
&lt;br /&gt;
*Pikemate klahvikombinatsioonide koos kasutamine. Näiteks Ctrl+C ja Ctrl+V töötavad ühe vastusena ja vajalik on, et vajutatakse mõlemad ning õiges järjekorras.&lt;br /&gt;
&lt;br /&gt;
===Võimalikud funktsionaalsused (kui aega üle jääb)===&lt;br /&gt;
*Ajastatud kordamine, et teadmised kinnistuks paremini mällu. Niinimetatud “spaced repetition” (https://en.wikipedia.org/wiki/Spaced_repetition). Rakendus peaks soovitama, millal uuesti treenima peaks ning klahvikombinatsioonid, millega on rohkem eksitud, kuvataks tihedamini testides.&lt;br /&gt;
&lt;br /&gt;
*Asja mängulisemaks muutmiseks võib anda kasutajale võimaluse täita erinevaid “väljakutseid” ja nende täitmisel saaks märke. Näiteks “30 päeva järjest harjutamist”, “100 õiget järjest” jne.&lt;br /&gt;
&lt;br /&gt;
*Otsingufunktsionaalsus - võimalik otsida õppetükkidest kindlaid kombinatsioone ja lahendusi. Abiks siis, kui ei taha treenida, aga tahaks mõnda kombinatsiooni kiiresti leida ja muuta.&lt;br /&gt;
&lt;br /&gt;
*Eksportida/importida kasutaja ajalugu - saab näiteks oma ajaloo teise arvutisse viia ja jätkata oma treeninguid sealt, kus pooleli jäi.&lt;br /&gt;
&lt;br /&gt;
*Võimalus sisestada ka muid ülesandeid kui ainult klahvikombinatsioone. Näiteks raamatute autorite teadmine.&lt;br /&gt;
&lt;br /&gt;
*Erinevad ülesannete lahendamisviisid. Näiteks ajapiirang - mitu õiget järjest jms.&lt;br /&gt;
&lt;br /&gt;
*Enda tulemuste võrdlemine teiste kasutajate samade testide aegadega.&lt;br /&gt;
&lt;br /&gt;
*Koduleht, kus me haldame ja hoiame ülesandeid ning lokaalsetest rakendustest saab neid ülesandeid alla tõmmata/kasutaja saab märguande, kui uusi ülesandeid on lisatud.&lt;br /&gt;
&lt;br /&gt;
*Kasutaja konto on ühendatud kodulehega, nii et kui uues kohas sisse logib siis automaatselt laetakse alla kõik kasutaja seaded/ajalugu/testid.&lt;br /&gt;
&lt;br /&gt;
*Internetis olev edetabel, kus kasutajad saaksid end teiste kasutajatega võrrelda&lt;br /&gt;
&lt;br /&gt;
*Multiplatvormne lahendus: Windows, Mac ja Linux(common distributions) support.&lt;br /&gt;
&lt;br /&gt;
=Kokkusaamiste logid=&lt;br /&gt;
==Algus==&lt;br /&gt;
31.10 Saime kõik ka reaalselt kokku ja vaatasime, mida keegi avastanud oli ning tegime alguse analüüsi kirjutamisega.&lt;br /&gt;
&lt;br /&gt;
Iris oli avastanud meie projektile sarnase lehekülje https://www.shortcutfoo.com/ mille miinuseks võib tuua, et sinna ei saa oma harjutusi sisse importida.. ent plussiks on lihtne kasutajaliides ja palju erinevaid treeninguvariante. &lt;br /&gt;
&lt;br /&gt;
Timo näitas lehte http://fullrecall.com/ millest võiks eeskuju võtta just intervallide mõttes, et kui tihti peaks inimene asju kordama, et need kinnistuks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
25.10 Kohtusime virtuaalselt telegrammi vahendusel. Lõime meeskonnale Team Foundation Service&#039;i konto ning tutvusime võimalustega. &lt;br /&gt;
&lt;br /&gt;
Järgmiseks reaalseks kogunemiseks sai määratud 30. okt. Igale meeskonna liikmele sai ka projektijuhi poolt antud väike kont järada, et reedel saaksime olla konstruktiivsemad.&lt;br /&gt;
&#039;&#039;&#039;Järatavad kondid:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Karell - uurib, millised oleks Windows Presentation Foundationis kujundus võimalused ja piirangud näiteks kas me saame oma applicationi muu kujulise kui kast teha? Värvipiirangud? Popupid?&lt;br /&gt;
&lt;br /&gt;
Kerly-Timo - mõtlevad natuke vaadete kujunduse peale.. või üldiselt milline meie programm võiks väliselt välja näha.&lt;br /&gt;
&lt;br /&gt;
Iris uurib netis teisi sarnaseid programme/või kodulehti.. et palju neid olemas juba on, mis funktsionaalsust me neilt üle võiks võtta ning mis on nende puudused, mis meie programmis võiks olla lahendatud.&lt;br /&gt;
&lt;br /&gt;
Joonas uurib seda kuidas c sharpis ära kaaperdada kõik klahvivajutused, ka windowsi enda omad.. &lt;br /&gt;
&lt;br /&gt;
Samuti võiksid kõik meeskonnaliikmed uurida TFS võimalusi. Veidi ringi klikata ja keskkonnaga tutvuda. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
22.10&lt;br /&gt;
Saime esimest korda kokku ja genereerisime erinevaid ideid, millest kolm olid kõige huvitavamad. Neist valisime siis välja parima - Vajutuskunn.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96920</id>
		<title>Meeskond: Lebokeiss OÜ</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=Meeskond:_Lebokeiss_O%C3%9C&amp;diff=96920"/>
		<updated>2015-11-06T22:18:31Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: /* Idee kirjeldus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== C# projekt Vajutuskunn==&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Meeskonna nimi: Lebokeiss OÜ&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Projekt=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Operatsioonisüsteemi ja valitud programmide lühendite õppimise simuleerimise rakendus.&lt;br /&gt;
&lt;br /&gt;
=Meeskonna koosseis=&lt;br /&gt;
&lt;br /&gt;
*Iris Tambaum&lt;br /&gt;
*Kerli Edasi&lt;br /&gt;
*Joonas Jõeleht&lt;br /&gt;
*Timo Lanno&lt;br /&gt;
*Karell Veskimeister&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Projektijuht: Joonas Jõeleht&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Projektist=&lt;br /&gt;
&lt;br /&gt;
==Ülevaade==&lt;br /&gt;
Klaviatuuri kombinatsioonide simulatsiooni tarkvara, mis pakub kliendile võimalust mugavas ja stressivabas keskkonnas kiirelt omandada erinevaid kombinatsioone. Eesmärk on lühendada koolitustel erinevate käskude ja lühendite omandamise aega. Samal ajal ka pakkuda võimalust iseseisvalt arendada enda oskusi valitud keskkonnas. &lt;br /&gt;
&lt;br /&gt;
== Kasutatav .NET tehnoloogia ==&lt;br /&gt;
&lt;br /&gt;
Kasutatav raamistik: .NET Framework 4.5&lt;br /&gt;
&lt;br /&gt;
Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ&lt;br /&gt;
&lt;br /&gt;
Kasutatav arhetektuuriline muster: MVVM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Täpsemalt rakenduse tööst==&lt;br /&gt;
* Rakenduse valimine&lt;br /&gt;
Kasutaja valib endale rakenduse, kus ta soovib ennast arendada. Pakutakse välja olemasolev template ja kasutaja saab alustada õppimist.&lt;br /&gt;
* Rakenduse lühendite täiustamine&lt;br /&gt;
Kasutajal on võimalus lisada spetsiifilisemaid lühendeid, mida ta tahab harjutada ja endale selgeks teha.&lt;br /&gt;
===Idee kirjeldus===&lt;br /&gt;
&lt;br /&gt;
Tänapäeva inimene veedab oma päeva suures osas arvutis, kasutades erinevaid programme. Olgu selleks interneti brauser või tekstitöötlusprogramm. Me kõik teame, et igal programmil on olemas klahvide kiirkombinatsioonid, millega saab programmi efektiivsemalt kasutada, ent siiski me neid üleliia palju ei kasuta, sest kiirkombinatsioonid jäävad raskesti meelde ja neid on palju.&lt;br /&gt;
&lt;br /&gt;
Meie loodav programm on platvorm, mille esmane eesmärk on aidata kasutajal õppida erinevaid klahvikombinatsioone läbi testide lisamise ning vastavas testis olnud klahvikombinatsioonide harjutamise.&lt;br /&gt;
&lt;br /&gt;
Lisafunktsionaalsus, mida esimene etapp ei pruugi realiseerida, on arvestamine kasutaja ajalooga. Selle all mõtleme just valesti vajutatud/vastatud klahvikombinatsioone. Me sooviksime kindla algoritmi alusel valesti vajutatud klahvikombinatsioone kasutajale uuesti ülesandeks ette anda, et need kinnistuksid.&lt;br /&gt;
&lt;br /&gt;
===Mida rakendus endas sisaldab? (Mis võimalused seal on?)===&lt;br /&gt;
&lt;br /&gt;
Rakendus võimaldab luua kasutaja, kuid rakendust saab kasutada ka “külalisena”. Kasutaja saab luua enda tingimustele vastavaid teste, neid importida ja eksportida. Kasutaja eelis tavalise külalise ees on see, et kasutaja saab näha enda ülesannete statistikat ning arengut ja platvorm “kohandub” tema tegutsemisajaloo järgi ning soovitab treenida just neid klahvikombinatsioone, milles on rohkem eksitud. &lt;br /&gt;
&lt;br /&gt;
Teste saab teha rakenduse siseselt kättesaadavaks kõigile, see tähendab, et need on kättesaadavad antud arvuti kasutajatele, või hoida privaatsena ehk kasutajaspetsiifilisena.  &lt;br /&gt;
	&lt;br /&gt;
Samuti saab teste meie platvormilt eksportida ning nii saavad teised kasutajad need testid oma programmi importida ja neid ka ise läbi teha. See funktsionaalsus võimaldab kasutajatel oma teste teistega jagada.&lt;br /&gt;
&lt;br /&gt;
===Milliste osade realiseerimine võib osutuda problemaatiliseks?===&lt;br /&gt;
&lt;br /&gt;
Probleemiks võib osutada Windowsis niinimetatud default klahvikombinatsioonide “üle kirjutamine” ja kättesaamine, (näiteks klaviatuuril olev windows klahv avab windowsis igal juhul start menüü) aga kuna meil on teadmine, et näiteks vmwares või virtualboxis olles on see funktsionaalsus edukalt üle kirjutatud, siis on see tehtav (märksõnaks võiks olla P/Invoke).&lt;br /&gt;
	&lt;br /&gt;
Problemaatiline võib olla ka efektiivse õppimisalgoritmi välja mõtlemine. Näiteks kui tihti peaks soovitama kasutajal harjutada ja asju korrata, et asi kinnistuks. Samuti, kui tihti peaks laskma kasutajal harjutada klahvivajutusi, millega ta pole kordagi eksinud versus klahvivajutused, millega juba on eksitud. Eeskujuks loodame võtta sellel ajal programmi fullrecall ning teiseks märksõnaks võiks olla “Spaced Repetition” https://en.wikipedia.org/wiki/Spaced_repetition) kust saab eeskuju võtta.&lt;br /&gt;
&lt;br /&gt;
==Funktsionaalsused==&lt;br /&gt;
===Planeeritavad funktsionaalsused===&lt;br /&gt;
&lt;br /&gt;
*Kasutajate haldamine (loomine, muutmine, kustutamine). &lt;br /&gt;
&lt;br /&gt;
*Kasutajarollid - tavakasutaja ei tohiks saada teist kasutajat muuta/kustutada.&lt;br /&gt;
&lt;br /&gt;
*Testide loomine, muutmine, kustutamine, eksportimine ja importimine.&lt;br /&gt;
&lt;br /&gt;
*Statistikamoodul - õigesti ning valesti vastatud küsimuste vaatamine nii sessiooni kui kogu harjutusaja lõikes.&lt;br /&gt;
&lt;br /&gt;
*Mõlemat pidi funktsionaalsus - alguses kuvatakse lühendi kirjeldus ja siis kasutaja vajutab vastuse või kuvatakse esimesena lühend ja siis kasutaja kirjeldab seda.&lt;br /&gt;
&lt;br /&gt;
*Abi nupp - abi nupule vajutamist kuvatakse rippmenüü võimalikest vastustest, (juhtub ka pärast kindla aja möödumist).&lt;br /&gt;
&lt;br /&gt;
*Vastuse nupp - kuvatakse õige vastus.&lt;br /&gt;
&lt;br /&gt;
*Treeningrežiim - näed kohe ka vastust, ent pead ikka õigeid klahve vajutama. Kasulik, kui alles importisid uue testi sisse ja ei tea reaalselt ühtegi klahvikombinatsiooni.&lt;br /&gt;
&lt;br /&gt;
*Meie programmi õppetükk - kuna meie enda rakendusel on ka oma klahvikombinatsioonid, siis vaikimisi on lisatud meie rakenduse klahvikombinatsioonide õppetükk.&lt;br /&gt;
&lt;br /&gt;
*Pikemate klahvikombinatsioonide koos kasutamine. Näiteks Ctrl+C ja Ctrl+V töötavad ühe vastusena ja vajalik on, et vajutatakse mõlemad ning õiges järjekorras.&lt;br /&gt;
&lt;br /&gt;
===Võimalikud funktsionaalsused (kui aega üle jääb)===&lt;br /&gt;
*Ajastatud kordamine, et teadmised kinnistuks paremini mällu. Niinimetatud “spaced repetition” (https://en.wikipedia.org/wiki/Spaced_repetition). Rakendus peaks soovitama, millal uuesti treenima peaks ning klahvikombinatsioonid, millega on rohkem eksitud, kuvataks tihedamini testides.&lt;br /&gt;
&lt;br /&gt;
*Asja mängulisemaks muutmiseks võib anda kasutajale võimaluse täita erinevaid “väljakutseid” ja nende täitmisel saaks märke. Näiteks “30 päeva järjest harjutamist”, “100 õiget järjest” jne.&lt;br /&gt;
&lt;br /&gt;
*Otsingufunktsionaalsus - võimalik otsida õppetükkidest kindlaid kombinatsioone ja lahendusi. Abiks siis, kui ei taha treenida, aga tahaks mõnda kombinatsiooni kiiresti leida ja muuta.&lt;br /&gt;
&lt;br /&gt;
*Eksportida/importida kasutaja ajalugu - saab näiteks oma ajaloo teise arvutisse viia ja jätkata oma treeninguid sealt, kus pooleli jäi.&lt;br /&gt;
&lt;br /&gt;
*Võimalus sisestada ka muid ülesandeid kui ainult klahvikombinatsioone. Näiteks raamatute autorite teadmine.&lt;br /&gt;
&lt;br /&gt;
*Erinevad ülesannete lahendamisviisid. Näiteks ajapiirang - mitu õiget järjest jms.&lt;br /&gt;
&lt;br /&gt;
*Enda tulemuste võrdlemine teiste kasutajate samade testide aegadega.&lt;br /&gt;
&lt;br /&gt;
*Koduleht, kus me haldame ja hoiame ülesandeid ning lokaalsetest rakendustest saab neid ülesandeid alla tõmmata/kasutaja saab märguande, kui uusi ülesandeid on lisatud.&lt;br /&gt;
&lt;br /&gt;
*Kasutaja konto on ühendatud kodulehega, nii et kui uues kohas sisse logib siis automaatselt laetakse alla kõik kasutaja seaded/ajalugu/testid.&lt;br /&gt;
&lt;br /&gt;
*Internetis olev edetabel, kus kasutajad saaksid end teiste kasutajatega võrrelda&lt;br /&gt;
&lt;br /&gt;
*Multiplatvormne lahendus: Windows, Mac ja Linux(common distributions) support.&lt;br /&gt;
&lt;br /&gt;
=Kokkusaamiste logid=&lt;br /&gt;
==Algus==&lt;br /&gt;
31.10 Saime kõik ka reaalselt kokku ja vaatasime, mida keegi avastanud oli ning tegime alguse analüüsi kirjutamisega.&lt;br /&gt;
&lt;br /&gt;
Iris oli avastanud meie projektile sarnase lehekülje https://www.shortcutfoo.com/ mille miinuseks võib tuua, et sinna ei saa oma harjutusi sisse importida.. ent plussiks on lihtne kasutajaliides ja palju erinevaid treeninguvariante. &lt;br /&gt;
&lt;br /&gt;
Timo näitas lehte http://fullrecall.com/ millest võiks eeskuju võtta just intervallide mõttes, et kui tihti peaks inimene asju kordama, et need kinnistuks&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
25.10 Kohtusime virtuaalselt telegrammi vahendusel. Lõime meeskonnale Team Foundation Service&#039;i konto ning tutvusime võimalustega. &lt;br /&gt;
&lt;br /&gt;
Järgmiseks reaalseks kogunemiseks sai määratud 30. okt. Igale meeskonna liikmele sai ka projektijuhi poolt antud väike kont järada, et reedel saaksime olla konstruktiivsemad.&lt;br /&gt;
&#039;&#039;&#039;Järatavad kondid:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Karell - uurib, millised oleks Windows Presentation Foundationis kujundus võimalused ja piirangud näiteks kas me saame oma applicationi muu kujulise kui kast teha? Värvipiirangud? Popupid?&lt;br /&gt;
&lt;br /&gt;
Kerly-Timo - mõtlevad natuke vaadete kujunduse peale.. või üldiselt milline meie programm võiks väliselt välja näha.&lt;br /&gt;
&lt;br /&gt;
Iris uurib netis teisi sarnaseid programme/või kodulehti.. et palju neid olemas juba on, mis funktsionaalsust me neilt üle võiks võtta ning mis on nende puudused, mis meie programmis võiks olla lahendatud.&lt;br /&gt;
&lt;br /&gt;
Joonas uurib seda kuidas c sharpis ära kaaperdada kõik klahvivajutused, ka windowsi enda omad.. &lt;br /&gt;
&lt;br /&gt;
Samuti võiksid kõik meeskonnaliikmed uurida TFS võimalusi. Veidi ringi klikata ja keskkonnaga tutvuda. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
22.10&lt;br /&gt;
Saime esimest korda kokku ja genereerisime erinevaid ideid, millest kolm olid kõige huvitavamad. Neist valisime siis välja parima - Vajutuskunn.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programmeerimine CSharp keeles (2015)]]&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
	<entry>
		<id>https://wiki.itcollege.ee/index.php?title=User:Itambaum&amp;diff=79993</id>
		<title>User:Itambaum</title>
		<link rel="alternate" type="text/html" href="https://wiki.itcollege.ee/index.php?title=User:Itambaum&amp;diff=79993"/>
		<updated>2014-10-23T02:36:17Z</updated>

		<summary type="html">&lt;p&gt;Itambaum: Created page with &amp;quot; Category:Erialatutvustus 2014 (Päevaõpe) =Erialatutvustuse aine arvestustöö= Autor: Iris Tambaum  Esitamise kuupäev: 23. oktoober 2014  ==Essee== Umbes kahe kuu jooksul…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt; [[Category:Erialatutvustus 2014 (Päevaõpe)]]&lt;br /&gt;
=Erialatutvustuse aine arvestustöö=&lt;br /&gt;
Autor: Iris Tambaum&lt;br /&gt;
&lt;br /&gt;
Esitamise kuupäev: 23. oktoober 2014&lt;br /&gt;
&lt;br /&gt;
==Essee==&lt;br /&gt;
Umbes kahe kuu jooksul käisid erinevad EIKi vilistlased meile rääkimas oma kogemusest IT valdkonnas. Teemad olid väga erinevad ning esitused üsna ebaühtlase tasemega. Mõnikord juhtus, et esineja arvamus ei läinud kokku järgmise esineja omaga, kuid see tegigi asja põnevaks. Kuna ma enne EIKi tulemist palju ITst ei teadnud, siis vaatasin enamusi loenguid ilma eelarvamusteta ning ei osanud midagi oodata. Siin on väikeste kokkuvõtetena minu isiklik arvamus igast loengust.&lt;br /&gt;
&lt;br /&gt;
Esimeses loengus, mis toimus juba augustis, rääkisid Inga Vau, Margus Ernits ja Merle Varendi teemal „Õppekorraldus ja sisekord.“ &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/552b549b-da8b-48c4-9047-cf34af6e6188 Loengu &amp;quot;Õppekorraldus ja sisekord&amp;quot; (Inga Vau, Margus Ernits, Merle Varendi) 27. august loengusalvestus]&amp;lt;/ref&amp;gt; Kogu käsitletud materjal oli väga huvitav ning loengu jooksul ei hakanud kordagi igav. Seda seetõttu, et info oli vajalik ning hästi kokku võetud ja esitatud. Lisaks tüüpilistele asjadele, mida on võimalik ka kooli kodulehelt lugeda, jäi kõige rohkem meelde, et alati peaks küsima, suhtlema ning olema aktiivne. Samuti jäi kogu koolist väga organiseeritud mulje, mis pole siiani kadunud. Ilmselt väikse kooli eelis? Tundus, et kool tõepoolest tahab, et õpilane püsiks koolis ning on teinud selle jaoks vastavaid samme (iga küsimuse jaoks on keegi, kes vastab; lisategevuste jaoks on klubid; argumenteeritud tagasiside võetakse arvesse ning tehakse vastavad muudatused; probleemide tekkides ei pea kooli pooleli jätma jne). Väga hästi ette valmistatud ning läbi viidud loeng.&lt;br /&gt;
&lt;br /&gt;
Teises loengus rääkis Margus Ernits teemal „Õppimine ja motivatsioon“ ning rääkimas käis ka LAPikute esindaja. &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/4d88020e-ceeb-46cf-a017-a5497a9644a0 Loengu &amp;quot;Õppimine ja motivatsioon&amp;quot; (Margus Ernits) 4. september loengusalvestus]&amp;lt;/ref&amp;gt; See loeng oli mu jaoks üks igavamatest, sest otse keskkoolist tulles on spikerdamisest, petmisest ning motivatsioonist juba väga palju räägitud. Gümnaasium on ju vabatahtlik. Ma leian, et kui tudeng on otsustanud oma kooliteed jätkata pärast keskkooli, siis võiks ta olla piisavalt arukas, et mõista õppimise tähtsust, eriti ise õppimise. Samas loengu materjalidega üldiselt nõustusin ning mõned ideed olid huvitavad, lihtsalt teema oli see kord igavam. LAPikute esindaja tegi kiire ning arusaadava kokkuvõtte oma klubist, mida oli huvitav jälgida. &lt;br /&gt;
&lt;br /&gt;
Kolmandas loengus rääkis Margus Ernits teemal „Robootika ja häkkimine.“ &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/df5a30a1-6110-4c8a-a7fa-f6343c8cae65 Loengu &amp;quot;Robootika ja häkkimine&amp;quot; (Margus Ernits) 11. september loengusalvestus]&amp;lt;/ref&amp;gt; Põhimõtteliselt oli tegu robootikaklubi tutvustusega. Põhiline, mis loengust meelde jäi, oli see, et EIKi robootikaklubi on algajatele enda arendamiseks või edasijõudnutele lahedate ideede teostamiseks. Samuti jäid meelde mitmed heategevuslikud projektid, millest ma enne polnud midagi kuulnud ja mis jätsid väga positiivse mulje. Kindlasti võiks neid veel teha, usun, et paljud oleks huvitatud neis osalema. Loeng oli lühem, kui ülejäänud, kulges aeglaselt ning teema oli suhteliselt kitsas. Jäi mulje, et tegemist võis olla varuvariandiga, mida esitada, kui muu esineja ei saa tulla. Sellele vaatamata jäi klubist hea mulje ning tekkis huvi rohkem uurida selle kohta ning millalgi ehk robootika ruumi kohale minna. &lt;br /&gt;
&lt;br /&gt;
Neljandas loengus rääkis Janika Liiv teemal „Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast.“ &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/cc18f732-a0f2-4264-a3b8-d1a281583016 Loengu &amp;quot;Subjektiivselt programmeerimisest, stereotüüpidest ja kogukonnast&amp;quot; (Janika Liiv) 18. september loengusalvestus]&amp;lt;/ref&amp;gt; See loeng oli minu jaoks üks kahest parimast kogu aine jooksul. Janika Liiv oli esimene, kes rääkis pikemalt oma elust alates EIKist kuni tänapäevani. Tema EIKi-aegsetes mälestustes oli palju aspekte, millega sain kergelt samastuda (tuli otse gümnaasiumist, valis arenduse, sest tundus, et saab ise midagi kirjutada, ei teadnud ITst enne eriti midagi, jne) ning lisaks sellele jõudis ta veel palju muid teemasid läbi võtta (nt Ruby, stereotüübid). Tore oli kuulda, mis sarnase teguviisiga inimesest on saanud, ehk kuhu ise võiks aastate pärast jõuda. Kogu selle positiivse tulevikuvaate kõrval jäi ka meelde, et tulevikus on meil kõigil ilmselt depressioon, mille peale polnud ma enne mõelnud. Igatahes oli väga mõnus loeng, mis tekitas ideid ning andis palju mõtteainet. &lt;br /&gt;
&lt;br /&gt;
Viiendas loengus rääkis Carolyn Fischer teemal „IT süsteemide administraatorilt esmakursulasele.“ &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/ff9f663f-f616-4dea-b9b1-85616acfcccc Loengu &amp;quot;IT süsteemide administraatorilt esmakursulasele&amp;quot; (Carolyn Fischer) 25. september loengusalvestus]&amp;lt;/ref&amp;gt; Tundus, et esitlus oli üles ehitatud Janika Liiva esitluse põhjal, mida ka mainiti mitu korda. Kuna seekord oli tegu administraatoriga, siis oli palju juttu admini kunagistest ning praegustest tööülesannetest, millest ma eriti palju ei teadnud ning nii mõnigi hetk oli raske teemat jälgida. Selle tõttu ei jätnud esitlus ka nii head muljet ning polnud minu jaoks kõige huvitavam. Samas adminidele ning tudengitele, kes teemast midagi teadsid, oli see ilmselt meelepärasem. Esitus oli võrreldes teistega veidi aeglasem, kuid andis ülevaate administraatorite võimalikest tulevikuvõimalustest.&lt;br /&gt;
&lt;br /&gt;
Kuuendas loengus rääkis Kristjan Karmo teemal „Testimine ja tarkvara kvaliteet.“ &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/75d683be-016f-45e4-916d-d71a8c9c3d43 Loengu &amp;quot;Testimine ja tarkvara kvaliteet&amp;quot; (Kristjan Karmo) 2. oktoober loengusalvestus]&amp;lt;/ref&amp;gt; See oli üllatuslikult minu jaoks teine kahest parimast loengust. Üllatuslikult seetõttu, et teemast ma enne eriti midagi ei teadnud, nii et ootused polnud liiga suured, kuid loengu lõpuks tundus, et teema on arusaadav ning selge. Karmo esitas teemat huvitavalt, minu tähelepanu ei hajunud kordagi loengu jooksul. Meeldis, et oma alast rääkides ei toonud ta välja ainult positiivseid külgi vaid ka negatiivseid. Kõik oli tasakaalus. Teema oli samuti hea, sai taaskord paar võimalikku ideed tulevikuplaanideks juurde. Seekord ei heidutanud üldse, et esineja nö vastasharust (admin) oli, pigem vastupidi, tekitas selle haru vastu rohkem huvi. Ideaalne loeng erialatutvustuse aines. &lt;br /&gt;
&lt;br /&gt;
Seitsmendas loengus rääkis Andres Septer teemal „IT tööturust.“ &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/0326c0ae-9a48-4b1f-bbbc-0cfb8b94991c Loengu &amp;quot;IT tööturust&amp;quot; (Andres Septer) 9. oktoober loengusalvestus]&amp;lt;/ref&amp;gt; Septer oli ainuke, kes tegi loengu ilma esitluseta ning oli näha, et ta oli auditooriumi ees omas elemendis. Rääkis ta põhiliselt oma kogemustest erinevatel (IT alastel) tööpostidel ning tõi ka väga palju näiteid elust enesest. Näited olid suures enamuses negatiivsed ning seetõttu jäi mulle ka kogu esitusest veidi veider mulje. Tundus, et erinevaid näiteid läbis sama põhiteema: alati on keegi teine süüdi. Samas, kogu negatiivsus kõrvale jättes sai IT valdkonna erinevatest külgedest palju huvitavat teada ning tulevikus töökohta valides on kindlasti neist näidetest kasu.&lt;br /&gt;
&lt;br /&gt;
Kaheksandas loengus rääkis Elar Lang teemal „Suhtumine õppetöösse ja veebirakenduste turvalisus.“ &amp;lt;ref&amp;gt;[https://echo360.e-ope.ee/ess/echo/presentation/791a5ecb-f27c-4401-8565-1dbd16894f27?ec=true Loengu &amp;quot;Suhtumine õppetöösse ja veebirakenduste turvalisus&amp;quot; (Elar Lang) 16. oktoober loengusalvestus]&amp;lt;/ref&amp;gt; Esimene pool teemast oli väga sarnane teise loenguga („Õppimine ja motivatsioon,“ Margus Ernits), nii et selle võrra oli igavam kuulata, kuid tegelikult oli loeng väga hästi läbi viidud, seda enam, et teine pool teemast oli täiesti uudne info. Teemat lugedes arvasin, et tuleb tüüpiline ning mitte eriti huvitav loeng, kuid tegelikult oli palju uut teavet ning huvitavaid näiteid. Esitus oli samuti väga hea, tähelepanu ei hajunud kordagi.&lt;br /&gt;
&lt;br /&gt;
Millegipärast ei arvanud ma, et see aine mulle väga meeldiks, kuid pärast kõiki loenguid võin öelda, et jäin rahule. Kõige rohkem jäid meelde Liiva ning Karmo esitused. Need olid hästi läbi mõeldud ning esitatud, teemad olid samuti huvitavad ning sobisid suurepäraselt eriala tutvustamiseks. Sarnaseid loenguid kuulaks ka tulevikus hea meelega. Teise loengu asemel oleks võinud  olla midagi muud, sest sama teemat käsitleti ka viimases loengus. Tulevikuks lisaks ka, et kuigi loengutes mainiti, et mikrofon ringi käiks, kui küsimusi küsitakse, siis tihti pärast järgi kuulates ikkagi küsimusi lindil ei olnud. Seega oleks tark alati kohale minna, isegi kui tund on neljapäeval ainuke.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Õpingukorralduse küsimused==&lt;br /&gt;
===Küsimus A=== &lt;br /&gt;
Kukkusid eksamil läbi. Kaua on võimalik eksamit järele teha? Kellega kokkuleppida, et järeleksamit teha? Kuidas toimub järeleksamile registreerimine? Mis on tähtajad? Palju maksab, kui oled riigi finantseeritaval (RF) õppekohalkohal? Palju maksab, kui oled tasulisel (OF) õppekohal kohal?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Eksamit on võimalik järele teha kahe semestri jooksul pärast aine õpetamissemestri lõppu. Järeleksami tegemine tuleb kokku leppida ainet õpetava õppejõuga, kes määrab järeleksami tähtajad kooskõlas õppeosakonnas koostatud ajakavaga. &amp;lt;ref&amp;gt;[http://www.itcollege.ee/tudengile/eeskirjad-ja-juhendid/oppekorraldus-eeskiri/#eksamid Eesti Infotehnoloogia Kolledži õppekorralduse eeskiri 5.3]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Järeleksamile registreeruda saab ÕIS-i kaudu, klikates enda andmete lehel lingile “Kordussooritused”. Registreerumise ja soorituse vahele peab jääma vähemalt 2 tööpäeva. RE tudengi jaoks on kordussooritusel osalemine tasuta, kuid registreeruda tuleb ikka! Kui õpid OF õppekohal, tuleb maksta kordussoorituse tasu 20 € HITSA kontole; arve leiad ÕIS-ist peale sooritusele registreerumist. &amp;lt;ref&amp;gt;[http://www.itcollege.ee/tudengile/kkk/ Eesti Infotehnoloogia Kolledži KKK 9]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Küsimus 4=== &lt;br /&gt;
Sul on olemas varasem töökogemus, mida sa tahad kasutada õppeainete arvestamisel (VÕTA). Millised on tegevused? Millised on tähtajad? Kas VÕTA kaudu saadud EAPd arvestatakse semestri õppekava täitmisesse ja aasta õppekoormusesse?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Varasemate õpingute ja töökogemuse arvestamist taotlev isik esitab ÕIS-is hiljemalt 10-ndal tööpäeval enne punase joone päeva vormikohase taotluse koos vajalike lisadega. &amp;lt;ref&amp;gt;[http://www.itcollege.ee/sisseastujale/vota/vota-kord/#taotlus Eesti Infotehnoloogia Kolledži VÕTA kord II 1]&amp;lt;/ref&amp;gt; VÕTA komisjon vaatab taotluse läbi ja teeb otsused taotluse rahuldamise või tagasilükkamise osas ühe kuu jooksul alates taotluse esitamise tähtajast. &amp;lt;ref&amp;gt;[http://www.itcollege.ee/sisseastujale/vota/vota-kord/#hindamine Eesti Infotehnoloogia Kolledži VÕTA kord III 2]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Seoses kõrgharidusreformiga ei arvestata alates 2013/2014 õa.-st IT Kolledžis õpinguid alustanud tudengite puhul VÕTA tulemusi semestripõhisel õppekava täies mahus täitmise kontrollimisel. Samas VÕTA kaudu arvestatud õppesooritused täidavad õppekoormust (täis- või osakoormus), mida kontrollitakse õppeaasta lõpus. &amp;lt;ref&amp;gt;[http://www.itcollege.ee/tudengile/kkk Eesti Infotehnoloogia Kolledži KKK 6]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ülesanne===&lt;br /&gt;
Kui mitme EAP ulatuses tuleb õppekulud osaliselt hüvitada aasta lõpuks, kui esimese semestri lõpuks on olemas 23 EAPd ja teise semestri lõpuks 25 EAPd? Kui suur on teile esitatav arve?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Vastus&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Õppekulude osalise hüvitamise kohustuse tekkimise aluseks oleva õppekava täies mahus täitmise määr on vastavalt Eesti Infotehnoloogia Kolledži nõukogu otsusele 2014/2015 õppeaastal 27 EAP semestris ja õppekulude osalise hüvitamise määr on 50 € 1 EAP kohta. &amp;lt;ref&amp;gt;[http://www.itcollege.ee/tudengile/finantsinfo/ Eesti Infotehnoloogia Kolledži finantsinfo]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2 * 27 - (23 + 25) = 6 EAPd&lt;br /&gt;
&lt;br /&gt;
6 * 50 = 300 €&lt;br /&gt;
&lt;br /&gt;
=Viited=&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Itambaum</name></author>
	</entry>
</feed>