FlexibleShare updated

FlexibleShare extends FlexibleDashboard (dashboard framework, BI charting, reporting pods) with FlexSpaces doc management pods (Alfresco backend) and adds additional Flex pods for Share collaboration (Alfresco Share backend). All three of these projects are open source. FlexibleShare has been updated to use code from the latest versions of FlexSpaces and FlexibleDashboard, and the Share pods have added site selection drop downs.  Also added an  Alfresco Add-Ons page for FlexibleShare.

The doc management portion now has support for Alfresco 4.0, and a new preferences dialog for easier setup of server domain/port and API key setup of optional semantic auto-tagging with the OpenCalais Integration for Alfresco. The default config in the flexibleShareAirPods.xml just has the combined multi-view FlexSpaces pod shown in the top left. This screenshot also shows the available search, tasks, and local files pods (the all repository doc lib pod is not shown). In the AIR version, files from the local files pod can be copied into a doc lib view via drag/drop. Also in the AIR version, multi-select files can be copied via drag / drop from the desktop into a doc lib view,  copied out via drag/drop, or the native desktop clipboard can be used to copy/paste of files between the desktop and a doc lib   (AIR can do more than the HTML5 drag in available in some browers).

flexibleshareairbld4-33percent.png

The Share collaboration wiki, blog, discussions, doclib Flex pods are now more usable out of the box with added drop-downs to select Share site to work with (instead of setting the share site shortName in the pods xml file). More work is needed to hook up the calendar pod to load Share site calendar info (and an add event dialog is not available yet). Although the calendar pod is able to load iCalendar files, more work is needed to get it to work with the iCalendar data available from the Alfresco “slingshot” /calendar/eventList?site={shortName}&format=calendar webscript.

flexiblesharesharepods2.png

Planned for FlexibleShare:  calendar pod hookup with Share sites,   multiple repository support,  support for CMIS repositories, drag/drop copy between repositories, support for Alfresco Cloud repositories, multi-repository search,  Solr facets search navigation,  support for Apache Stanbol semantic auto-tagging / semantic search,  mobile/touch?, and a port/translation to HTML5 / CSS / JavaScript (FlexSpaces, CMIS Spaces, FlexibleDashboard, FlexibleShare).

Steve Reiner
Integrated Semantics
@stevereiner on twitter

FlexibleDashboard now has Mobile AIR support for iOS/iPads and Android Tablets

FlexibleDashboard, an open source dashboard project for BI dashboards/mashups, etc., now has a Flex Mobile AIR version in addition to Desktop (Desktop AIR and Flex in browser) versions. An Android build is available for download, and the iOS version can be built from the common source.

FlexibleDashboard used the esria dashboard as a starting point and evolved it with added flexmdi cascade/tile (esria pod drag/drop in tile mode), more pods, both Flex in Browser and Flex+AIR versions, port from Flex 3 to Flex 4,  and pods in separate Flex modules. Example pods using Spring ActionScript to have different configs for individual pods and config of a simple IDataService with either SOAP, XML, or RemoteObject BlazeDS datasources (see GridPod and ChartGridPod) were also added.

FlexibleDashboard has the following pods: esria charting pods with quietly scheming animation (line, bar, pie charts),  JasperReports viewer, BIRT Report viewer, OLAP pivotable grid with XMLA datasource support and MDX query editor (from Grebulon sourceforge project), Pentaho Charts sample, a simple BlazeDS data pod, Flex SWF pod, Calendar, HTML viewing (IFrame, AIR HTML, mobile StageWebView versions),  and some AIR only (Desktop and Mobile) pods (HTML browser, Google gadgets, Liferay portlet widget, and Local Files browser).

For mobile, only the bare minimum was done: pod min/max/close button hit areas was increased and mobile versions of pods displaying HTML were created (the snapshot feature of the flexcapacitor WebView Flex UIComponent StageWebView wrapper helped to support cascading mode html pods with only the topmost being in StageWebVeiw mode and the other being in bitmap snapshot mode.) Other pods were unchanged and don’t have mobile specific UI (but stuff still works, even  mx chart drill down with touch).  Also, the original app projects were split into separate app / library / modules projects to facilitate sharing with the new mobile app / library projects.

It took an error message on iOS about not being able to load module SWF (Duh!) to get me to change the mobile project to link pod code instead of loading modules. Android Mobile AIR was able to load modules, but mobile Flex app projects in Flash Builder doesn’t have module setup and won’t build the app using framework RSL even though its in the UI. So I ended up just having a single mobile app project for both iOS and Android that doesn’t use modules (desktop AIR and in-browser Flex app projects still use modules).

Plan in the future to have some sort of HTML5/JS Dashboard project like FlexibleDashboard   (with web app and PhoneGap mobile app variations).  Also plan to add support for semantic data sources / semantic data integration, and more visualization support.

Steve Reiner

Integrated Semantics

@stevereiner on Twitter

OpenCalais Integration updated for Alfresco 4.0 and added use of new Share config mechanism. Apache Stanbol Plans

The OpenCalais Integration for Alfresco was finally updated for Alfresco 4.0 . Given the shift away from the Alfresco Forge to the Alfresco Add+Ons catalog site, the new home for the OpenCalais integration is now on a  Google Code site pointed to by its add+ons page

For Alfresco 4.0 with Solr enabled, an issue was fixed. (Some code that needed to get to newly added top level semantic tag categories right away needed to change to use a CategoryService API instead of using a search query since there is added delay in indexing. Changing the alfresco.cron  value  in solrcore.properties from 15 secs to 150 secs helped to get something that was intermittent to be reproducible every time.)

The Share Integration (semantic tag cloud dashlet, semantic geo-tagged map dashlet, auto-tag action menu in doc libraries and repository) was updated to use the new doclib action config mechanism added in 4.0 . Its much nicer to put an added action menu in a web-extension/share-config-custom.xml file than to setup the  modified versions of actions-common.get.head.ftl , documentlist.get.config.xml, etc in web-extension.  (Helpful ECM Stuff blog post on Share action config in Alfresco 4.0)

To use the free OpenCalais service, you need to get an API key from  opencalais.com  This allows you to submit 50,000 documents a day. More requests are supported in the non free version called Calais vs. the free (but not open source) service called OpenCalais. Note that document size per submission is to 100k bytes in all versions, the service retains extracted metadata (doesn’t retain content). So its geared more for news articles than large sensitive documents.  Calais has a test page to try out giving it text and seeing what it extracts.

To use the Share auto-tag action menu  (used to do a one time auto-tag on a document) you need a Calais api key setup in module\calais\module-context.xml  (see readme.txt).  Semantic tags will be listed in the properties section of a Share document details page  (not with regular tag UI since a different category content model / custom root category is used for semantic tags). You can also add one or more semantic tag clouds dashlets and a semantic geo-tagged map dashlet to share dashboards (site and/or global) to navigate from semantic tags to documents.   In explorer, doing a one time auto-tag you need to used the run a rule on a doc action and give the Calais key each time in the dialog.   A  rule to auto-tag documents in a folder can be setup in Explorer or Share (using the “Auto-tag with Calais” action, and you need to give the Calais api key as a parameter to this).

FlexSpaces has support for the OpenCalais integration in all its versions (desktop AIR client, Flex in-browser, Mobile AIR).  Like Share it supports semantic tag clouds, a semantic geo-tagged map, and one time auto-tagging like Share. It has additional OpenCalais features: semantic tag suggestion, adding / removing semantic tags on a document.  You can setup a Calais api key (and Alfresco server info) in FlexSpaces preferences dialog that was added in the 2012.02.08 version and avoid having to do this in FlexSpacesConfig.xml . Info entered is sticky and per user on their local machine (stored in a Local Shared Object). So theoretically each user could submit 50,000 documents a day to OpenCalais if they each signed up for a key.  FlexibleShare includes FlexSpaces and its semantic features, but hasn’t been updated with the preferences dialog or other recent FlexSpaces changes yet (update: FlexibleShare 6/28/2012 version now has the preferences dialog and Alfresco 4.0 support too).

FlexSpaces Preferences Dialog

Plan to have an Alfresco integration with Apache Stanbol on the same Semantics4Alfresco Google Code  site with the OpenCalais integration.  Apache Stanbol (derived from the IKS project) is fully open source, is a general stack of frameworks for semantic content management and can do more than content enhancement,  can get around the drawbacks of OpenCalais, and gives you more flexibility to setup customized ontologies vs. the fixed support Calias has. Stanbol can also call other enhancement engines instead of the default OpenNLP or even chain them together. Stanbol has an adapter for OpenCalais. For enhancing news, OpenCalais works better out of the box than OpenNLP.   Zaizi has already done Stanbol integration work, although only a version for an old IKS version is currently open source.  Integrated Semantics will leverage  / extend any newer Stanbol integration that Zaizi makes available open source.  A Stanbol integration could extend Solr facets with semantic facets.