Add semantic support for list (and table) generation of a CMS user (content creator). The challenges are
- to have at least two dependent (named) entities, which needs to be in moderated synchronisation with the given knowledge base,
- to cope with more than one ontology being able to represent this relation (foaf, google organisation ontology, …)
- to provide patterns for time-indexed entity-relation-entity structures, e.g. event-temporal-parthood-object.
A CMS user (content creator) is about to write a review of the past workshop in Amsterdam. He/she starts with a list of all participants:
Workshop Amsterdam: Description: IKS Workshop in Amsterdam with GENTICS, Salzburg Research and DFKI. Participants:
The user then fills the information for the first item – the first participant:
- Sebastian (DFKI) email@example.com
After that, the user hits the enter button. In the first place, this triggers the corresponding functionality of “finishing the current list item and starting a new one” in the editor. The editor performs the corresponding editing actions (e.g., write HTML code) and then triggers the smartContentChange event. The semantic ‘auto-completion component’ – that is listening on this event – is activated.
The auto-complete component uses the current context (e.g., the organizations that are present in the current text, i.e., GENTICS, Salzburg Research and DFKI) to present the user text to be automatically filled. Being in the context of editing a list (or table), the auto-complete component treats the first item (the first row) as a key-item. Hence, the component triggers the auto-template generation functionality to analyze the key-item, which then extracts the following template:
<v:firstname> (<v:affiliation>) <v:email>
With the help of this template and the knowledge that this list is about persons, the system can recommend possible next items for the user, when he/she enters names. Per default, this options should be enabled and could be disabled by the user by pressing the ESC button (re-enabling by: CMD+enter).
The auto-complete functionality UI should present the user a drop-down menu of entities when the user starts entering a name. These entities should already use the template’s format, hence, should auto-complete the whole line and not just the current field.
A user already filled a list of twenty participants. Suddenly, he/she decides to add the last-name of each person. The connection of the key-item to the template of the others could be used to support the user at best. The moment the user changed (and approved: trigger?) the first line (row), the template could be re-generated and the last-name of all participants can be added directly.
The editor is a semantic editor, hence, it should annotate the HTML code appropriately. Preferably, we use the RDFa annotation scheme for this. Again, we should treat the first item (the first row) as a key element here and annotate the content subject-driven. This means, that the text ‘Sebastian (DFKI)’ should be annotated like:
<Sebastian> hasAffiliation <DFKI>
<DFKI> hasEmployee <Sebastian>
(More) technical description:
TO BE FILLED (see the information in the Wiki)
Clearly separate the editor functionalities of triggers (e.g., button pressed) with the semantic component functionalities.
- Different triggers (don’t overload them)
- Technical description part
- context = set of all available environment sensors
- system date-time vs available absolute/relative dates within the content
- geo-position of “user” vs location of event/organisation . http://html5demos.com/geo
- available entities enhancements for a given text (from Apache Stanbol)