Source Code Analyzer
This product can be used to create descriptive metadata files from source code. Parse source code or web service WSDL definitions. List the main methods and parameters, and access online dictionaries to create a script with enhanced descriptions. Use the script to return your online service's definitions to another user or program. The option to create Licas admin documents is now removed and may get added to a different program.
You can download the program from here, while the user guide describes the product features in detail. Future developments may be limited and so the download is now the full program, not the demo version.
This utility program is a code analyzer and semantic mapping application. The application can read source code files and parse them to determine what the most important words or concepts in the method headings are. This information is then used to allow the user to enhance these method descriptions with standard descriptions from online dictionaries. This would be useful, for example, if the code was an interface to a Web-based service. The method name, return type and parameter descriptions can all be updated with additional descriptions or keywords, that can then be read and understood by another program or human user. The key features are as follows:
- Parse source code or WSDL to determine the key words or concepts.
- Retrieve standard online definitions of keywords to enhance metadata descriptions.
- Save the enhanced descriptions in an XML file to be added to a Web service interface.
- Use the enhanced description to allow for autonomous search or communication.
- The program can parse both Java and .Net files (C# or VB).
- Access to online definitions in different languages.
- Undo / redo options for the last 5 operations.
While some knowledge and skill is required to determine what keywords and definitions to use, this application largely automates the process, making it much easier for the writer of the service to do this. The other advantage of this mechanism is the fact that the descriptions are based on standard definitions retrieved from online dictionaries. These can even be checked if the web address is known. This is therefore a ready-made standard for defining your web service interface that can be utilised relatively easily.
The program is now converting to online dictionaries that return in the json format, plus WordNet. Any other dictionaries that become out of date with their html structure will be removed, so the list can change. You should always be able to use a local WordNet however.
The semantic panel can be used to add metadata descriptions for a web service, as described here.
This is an example that tries to enhance the metadata description, but using a different language. A description in English for the word combination 'confirmAppointment' has been parsed, where a list of keywords, translated into French, for the word 'appointment', have been retrieved and saved. This enhanced description can then be used as part of the web service interface, to provide more detailed and standardised information about your service, to human users or autonomous computer users alike. You can read an early paper about the application and why it has been written here.
You can download the full version of the program as a windows installer. I can also provide a zip file without an installer if you email a request.
You can download a script parser that can be used to read the generated script as part of your web service interface from here. There is a jar file for a Java web service and a C# dll for a .Net web service. As it has not been tested recently, the source is also included, to allow you to write your own. This is taken from the main program and probably contains more methods than you need to parse the script. So the source might be a bit confusing that way.
Your system must meet the following requirements for the software to work:
- The program is written in Java but might only run on Windows.
- The installation package is a windows setup.exe.
- However, on request, a zip file can be provided for other operating systems.