<?xml version="1.0" encoding="UTF-8"?>











<rss version="2.0">
  <channel>
    <title>Amsetwiki: Workflows</title>
    <link>http://socket3.leeds.ac.uk:8080/amsetwiki/</link>
    <description>Wiki for JISC AMSeT Project</description>
    <language>en-us</language>
    <generator>JSPWiki 2.8.1</generator>
    <item>
      <link>http://socket3.leeds.ac.uk:8080/amsetwiki/Wiki.jsp?page=Workflows&amp;version=-1</link>
      <title>Workflows, version -1</title>
      <description>clayton created this page on Tue Nov 17 13:25:14 GMT 2009:&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;div class="tabbedSection"&gt;
&lt;div class="tab-Atomics"&gt;
As part of the AMSeT toolkit, deliverables include a set of Alfresco BPEL workflows that are intended to lower the entry barrier to future projects whose aims include the use of Alfresco in a repository or learning design project.&lt;br /&gt;
&lt;p /&gt;
&lt;p&gt;The workflows will incorporate workspace, user, group and content management functions.  A set of short ('atomic') workflows with simple functionality will be created first, then these will be used to create examples with wider scope.&lt;br /&gt;
&lt;/p&gt;
&lt;p /&gt;
&lt;p&gt;This page provides a list of the atomic workflows with links to more information on each.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;As a shorthand, workflows will sometimes be referred to in truncated form, &lt;tt&gt;amset1&lt;/tt&gt; for &lt;tt&gt;amset1authentication&lt;/tt&gt;, for example.
&lt;/p&gt;
&lt;p&gt;Initial workflows are investigations of basic content, user and group functionality and are &lt;i&gt;synchronous&lt;/i&gt;.  Later examples will introduce &lt;i&gt;asynchronous&lt;/i&gt; workflow and the concept of BPEL &lt;i&gt;correlation&lt;/i&gt;.
&lt;/p&gt;
&lt;p /&gt;
&lt;h4 id="section-Workflows-WorkflowList"&gt;Workflow List&lt;a class="hashlink" href="#section-Workflows-WorkflowList"&gt;#&lt;/a&gt;&lt;/h4&gt;
&lt;p /&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset1authentication"&gt;amset1authentication&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset2createstore"&gt;amset2createstore&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset3securityheadertest"&gt;amset3securityheadertest&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset4createnode"&gt;amset4createnode&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset5writecontent1"&gt;amset5writecontent1&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset6createandwrite"&gt;amset6createandwrite&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset7writecontent2"&gt;amset7writecontent2&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset8clearcontent"&gt;amset8clearcontent&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset9copynode"&gt;amset9copynode&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset10deletenode"&gt;amset10deletenode&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset11movenode"&gt;amset11movenode&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset12createuser"&gt;amset12createuser&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset13createusers"&gt;amset13createusers&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset14getuser"&gt;amset14getuser&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset15deleteusers"&gt;amset15deleteusers&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset16queryusers"&gt;amset16queryusers&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset17getpermissions"&gt;amset17getpermissions&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset18haspermissions"&gt;amset18haspermissions&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset19addaces"&gt;amset19addaces&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset20removeaces"&gt;amset20removeaces&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset21getacls"&gt;amset21getacls&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset22getallauthorities"&gt;amset22getallauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset23getauthorities"&gt;amset23getauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset24createauthorities"&gt;amset24createauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset25deleteauthorities"&gt;amset25deleteauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset26addchildauthorities"&gt;amset26addchildauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset27getchildauthorities"&gt;amset27getchildauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset28removechildauthorities"&gt;amset28removechildauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset29getparentauthorities"&gt;amset29getparentauthorities&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset30getowners"&gt;amset30getowners&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amse31setowners"&gt;amset31setowners&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset32getclassifications"&gt;amset32getclassifications&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset33getcategories"&gt;amset33getcategories&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset34get"&gt;amset34get&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amset35read"&gt;amset35read&lt;/a&gt;
&lt;/p&gt;
&lt;p /&gt;&lt;/div&gt;

&lt;div class="tab-Forum-Spaces-and-Forums"&gt;
Although the functionality is more limited than with a product like JForum or mvnForum, it is possible to create discussion forums in Alfresco using the Web service interface.  All basic Alfresco resources are repository nodes and the forums are defined by an XML data model given in the snippet below.
&lt;p&gt;&lt;b&gt;Code snippet Forums 1. The Alfresco forums data model.&lt;/b&gt; 
&lt;/p&gt;
&lt;p /&gt;
&lt;p /&gt;
&lt;div class="prettify"&gt;
&lt;pre&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;

&amp;lt;model name=&amp;quot;fm:forummodel&amp;quot; xmlns=&amp;quot;http://www.alfresco.org/model/dictionary/1.0&amp;quot;&amp;gt;

   &amp;lt;description&amp;gt;Forum Model&amp;lt;/description&amp;gt;
   &amp;lt;author&amp;gt;&amp;lt;/author&amp;gt;
   &amp;lt;version&amp;gt;1.0&amp;lt;/version&amp;gt;

   &amp;lt;!-- Imports are required to allow references to definitions in other models --&amp;gt;   
   &amp;lt;imports&amp;gt;
      &amp;lt;!-- Import Alfresco Dictionary Definitions --&amp;gt;
      &amp;lt;import uri=&amp;quot;http://www.alfresco.org/model/dictionary/1.0&amp;quot; prefix=&amp;quot;d&amp;quot;/&amp;gt;
      &amp;lt;!-- Import Alfresco Content Domain Model Definitions --&amp;gt;
      &amp;lt;import uri=&amp;quot;http://www.alfresco.org/model/content/1.0&amp;quot; prefix=&amp;quot;cm&amp;quot;/&amp;gt;
   &amp;lt;/imports&amp;gt;

   &amp;lt;namespaces&amp;gt;
      &amp;lt;namespace uri=&amp;quot;http://www.alfresco.org/model/forum/1.0&amp;quot; prefix=&amp;quot;fm&amp;quot;/&amp;gt;
   &amp;lt;/namespaces&amp;gt;
   
   &amp;lt;types&amp;gt;
      &amp;lt;type name=&amp;quot;fm:forums&amp;quot;&amp;gt;
         &amp;lt;parent&amp;gt;cm:folder&amp;lt;/parent&amp;gt;
      &amp;lt;/type&amp;gt;
      
      &amp;lt;type name=&amp;quot;fm:forum&amp;quot;&amp;gt;
         &amp;lt;parent&amp;gt;cm:folder&amp;lt;/parent&amp;gt;
      &amp;lt;/type&amp;gt;
      
      &amp;lt;type name=&amp;quot;fm:topic&amp;quot;&amp;gt;
         &amp;lt;parent&amp;gt;cm:folder&amp;lt;/parent&amp;gt;
      &amp;lt;/type&amp;gt;
      
      &amp;lt;type name=&amp;quot;fm:post&amp;quot;&amp;gt;
         &amp;lt;parent&amp;gt;cm:content&amp;lt;/parent&amp;gt;
      &amp;lt;/type&amp;gt;
    &amp;lt;/types&amp;gt;
    
    &amp;lt;aspects&amp;gt;
      &amp;lt;aspect name=&amp;quot;fm:discussable&amp;quot;&amp;gt;
         &amp;lt;associations&amp;gt;
            &amp;lt;child-association name=&amp;quot;fm:discussion&amp;quot;&amp;gt;
               &amp;lt;source&amp;gt;
                  &amp;lt;mandatory&amp;gt;false&amp;lt;/mandatory&amp;gt;
                  &amp;lt;many&amp;gt;false&amp;lt;/many&amp;gt;
               &amp;lt;/source&amp;gt;
               &amp;lt;target&amp;gt;
                  &amp;lt;class&amp;gt;fm:forum&amp;lt;/class&amp;gt;
                  &amp;lt;mandatory enforced=&amp;quot;true&amp;quot;&amp;gt;true&amp;lt;/mandatory&amp;gt;
                  &amp;lt;many&amp;gt;false&amp;lt;/many&amp;gt;
               &amp;lt;/target&amp;gt;
               &amp;lt;duplicate&amp;gt;false&amp;lt;/duplicate&amp;gt;
            &amp;lt;/child-association&amp;gt;
         &amp;lt;/associations&amp;gt;
      &amp;lt;/aspect&amp;gt;
   &amp;lt;/aspects&amp;gt;
&amp;lt;/model&amp;gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;The key point here is that there are 4 datatypes in total: &lt;tt&gt;forums&lt;/tt&gt;, &lt;tt&gt;forum&lt;/tt&gt;, &lt;tt&gt;topic&lt;/tt&gt; &amp;amp; &lt;tt&gt;post&lt;/tt&gt;.
&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;tt&gt;forums&lt;/tt&gt; is a child of the folder datatype: it is a folder that holds discussion forums (although it is not mandatory to place a &lt;tt&gt;forum&lt;/tt&gt; in a &lt;tt&gt;forums&lt;/tt&gt; folder).
&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;These types are all nodes so the &lt;tt&gt;RepositoryService.update()&lt;/tt&gt; operation has the power over them.
&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;There are several forum possibilities that might prove useful for teaching and learning workflows. Alerts can be programmed to trigger when posts are made to the forum.  These alerts could take the form of an email, or of posting a message on someone's folder.
&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;Also, whole discussions can be harvested as XML by a &lt;tt&gt;getContent()&lt;/tt&gt; Web service.  It is then a straightforward matter in the BPEL process to transform the XML using XSLT to a convenient format before distribution to interested parties.  HTML, OpenOffice or PDF documents might be produced.  XSLT could also be used to anonymise discussions. 
&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;Basic forum workflows are labelled amsetf1workflow, amsetf2workflow ...
&lt;/p&gt;
&lt;h4 id="section-Workflows-Workflows"&gt;Workflows&lt;a class="hashlink" href="#section-Workflows-Workflows"&gt;#&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amsetf1createforumspace"&gt;amsetf1createforumspace&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a class="wikipage" href="/amsetwiki/Wiki.jsp?page=Amsetf2createforum"&gt;amsetf2createforum&lt;/a&gt;
&lt;/p&gt;
&lt;p /&gt;&lt;/div&gt;
&lt;/div&gt;</description>
      <pubDate>Tue, 17 Nov 2009 13:25:14 GMT</pubDate>
    </item>
  </channel>
</rss>

