Toolkit Enhancement Requirements
JISC could provide additional funding to enhance the eProfile toolkit. If they do, what do we want?
Features
- web service should return XML instead of an ampersand-delimited string
- XML should conform to FOAF schema
- XML FOAF profile should be available at a URL
- profiles retrievable by username instead of/or email address
- additional fields needed in profile
- allow multiple instances of field data where appropriate (is this actually the case with 'knows' field?)
TouchGraph enhancements?
- where graph appears on screen
- log out doesn't clear screen
- log-in should display graph automatically
Code
- database layer could be abstracted to allow for other databases in addition to MySQL.
Modifications to TouchGraph code could be removed from the TouchGraph code itself - the required added functionality could be achieved through subclassing, etc instead (Treat the TouchGraph code as a "black box").
Other
application (client & WS) could be made more robust. Currently most of the validation is done in the client, very little in the WS. One example is that the WS allows profiles to be created that the client rejects.
- shift the validation code to the WS (makes more sense being there).
- enable the client to rely on the validation in the WS.
- enables other people to write other clients, knowing that they can rely on validation in the WS.
- using the client needs to be made more robust in general - will often baulk at what it considers unexpected combinations of values that are not even attempts to confuse it! (Alexis: can you clarify what this means?)
- there are currently various miscellaneous exceptions thrown at certain instances:
StringIndexOutOfBoundsExceptions (probably go away when string parsing is replaced)
JenaException thrown during database access if the web service has been running for a while