To show how - and if :) - EXPRESS works, I will implement a prototype of the approach and test it on some use cases. I want to use a REST framework to make things easier. There are some REST frameworks like Ruby on Rails and Restlet. I started by reading about Ruby on Rails, from what I read I understood it has simplifying assumptions that might conflict with my requirements for example:
- Every item is either a list or a item in the list which may not work out for some resources like: Order123/hasDateTime
- IDs of the items must be numbers.
- Exchanged formats is either in XML or key-value pairs
- No linking between resources
There may be a workaround these problems but they aren’t straight forward. So I chose Restlet, and for now it seems OK. It is a Java API for modelling resources and responding to HTTP requests, it offers a lot more but these are the features that I am concerned with right now. Another good thing is that I’ll also be using Jena, so doing everything in Java may simplify things. Something in Restlet may cause a problem though, it doesn’t have OWL/RDF in the representations’ MediaTypes. However, there is RDF/XML, I am not sure if it will work instead.