I am working on a project that collects and analyzes moderately complex engineering data. Many people will be creating the data, but only a few actually performing analysis. A goal is to have this input data be in "documents" that are authored by the experts and machine readable, so there is no translation between the authors and the analysis. (This has been a source of error with current methods.) I have been struggling with how best to achieve this.
A prototype used Microsoft InfoPath 2007 forms as a means of data entry, where the program read the resulting XML. This sort-of worked, but the forms couldn't really handle the complexity very well, and were very difficult to revise when the requirements changed. Additionally, most users are still stuck with Office 2003.
I am exploring the idea of structured plain-text input files that are written manually. Most users aren't comfortable with XML and would refuse to write 开发者_Go百科using it. Inventing a custom language and parser seems like a nightmare. JSON seems ... reasonable, but not really meant for human use.
Are there any other options for input that I should consider?
A goal is to have this input data be in "documents" that are authored by the experts and machine readable
It sounds very much like you need an application level input to support your "expert" users. This should include all manner of data input validation and verification.
The result of the data input will then be a usable XML format.
The application itself can be quite simple but still facilitate the data entry process.
Excel. No really. Your users are used to using it and it's everywhere (even on the web now if you're using SP 2010). It can be customized ad nauseum. You're going to have to jump through hoops to get the data out, but I know of at least one major project at an insurance group that uses Excel with about 1000 templates for generating life insurance/key man insurance quotes.
One thing (I forgot to add): don't get the excel data out using COM if you can avoid it. It's messy. Try and use some of the built in Excel services stuff to do it. I know that Microsoft has made a big push for this sort of thing recently, unfortunately I've not have enough experience with it to help further.
精彩评论