Combine a wiki with code assist, templates, syntax checking, relational technology, a query language, semantic mapping and Google Suggest. What do you get?
An emergent language, that's what. A domain specific data entry language uniquely tailored to the information at hand through continued use and extension. The IDE features in the background are there to help in achieving consistency, but the user entering the data is really free to just enter it. This is the point. Make it easy to enter data and assist in making it valuable, ie. mineable. When it's hard or awkward to enter data, nobody enters it.
In the background, the system constantly analyzes existing data entries for commonalities to be exploited as structural information. These are then used in code assist proposals to further their consistent use. Code assist could also offer templates for common constructs.
Key elements to recognize in the data would be traditional relational concepts: attributes and associates. In particular, bidirectional associations with defined role names.
With this information, it is possible to implement sophisticated queries against the data store, even bringing relational technology to bear for large data stores.
The structural information could also be associated with semantic concepts (manually or maybe partially automatic). This in turn would enable the mapping of local semantics to more global semantic frameworks and thus, global queries across multiple WikiBases.
Given the performance of Google Suggest and auto-complete in Google Mail, it seems reasonable that a WikiBase client could be implemented in the browser so the basic user experience would be the same as for traditional wikis.
An emergent language, that's what. A domain specific data entry language uniquely tailored to the information at hand through continued use and extension. The IDE features in the background are there to help in achieving consistency, but the user entering the data is really free to just enter it. This is the point. Make it easy to enter data and assist in making it valuable, ie. mineable. When it's hard or awkward to enter data, nobody enters it.
In the background, the system constantly analyzes existing data entries for commonalities to be exploited as structural information. These are then used in code assist proposals to further their consistent use. Code assist could also offer templates for common constructs.
Key elements to recognize in the data would be traditional relational concepts: attributes and associates. In particular, bidirectional associations with defined role names.
With this information, it is possible to implement sophisticated queries against the data store, even bringing relational technology to bear for large data stores.
The structural information could also be associated with semantic concepts (manually or maybe partially automatic). This in turn would enable the mapping of local semantics to more global semantic frameworks and thus, global queries across multiple WikiBases.
Given the performance of Google Suggest and auto-complete in Google Mail, it seems reasonable that a WikiBase client could be implemented in the browser so the basic user experience would be the same as for traditional wikis.
Comments