Rethinking Data Languages
A data language is used to describe structured data.
Applications actually require an extremely lightweight and easy to use (e.g. human readable) data language. Ahead of everything, it’s critical to be patent free. The best option might be a good implementation published in the public domain. The principles are:
- Lightweight means easy for the developer and small footprint to the application. It’s also tend to be widely usable, say in a mobile device and embedded system. Lightweight also means easy to learn.
- Easy to use means the data language is easy for end users. The end user might knows only their native speaking language. The data language should be having a minimal set of keywords in simple English with a syntax simple enough to be described in minimal lines of human languages.
- Patent Free means great potential value of your application and data. Such potential value might belongs to the end user.
With these two basic principles, It’s obviously that an advanced programming language is not suitable for a data language. The principles for this conclusion are:
- An advanced programming language is typically hard to be integrated into the Application. Although there might be some small scripting language allowing easy integration. It’s still not an option for data language.
- A programming language brings structures and controls that are not needed for describing data. It tends to make things hard to use of end user.
Some popular data languages: