To build an unrestricted semantic role labeler, the first step is to develop a comprehensive proposition bank.
creating such a bank is a costly enterprise, which has only been achieved for a handful of languages.