I am looking for an information system which has the following features:
- upload files and add custom properties depending on file type (e.g., author, composer, painter, singer);
- support for sructured properties (e.g.,
painteris not just a string, it is an object with own properties: firstName, lastName, dateOfBirth, placeOfBirth, etc.); - describe third-party files (given their URLs);
- version control of descriptions;
- search for files and other objects by their properties;
- edit descriptions of files created by others (ability to edit depends on one's reputation, as on StackExchange);
- voting on files (influences reputation), flagging them.
I was thinking about implementing it myself using Semantic Web technologies, but still can't believe that there is no very similar system. If there is no such a system, are there any components that I could reuse?
If it does matter, I prefer Python, but most software in Semantic Web world is written in Java, so I resigned to the fact that I will have to write some code in Java.