Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Next revision Both sides next revision | ||
user:zeman:interset:how-to-write-a-driver [2007/03/07 10:33] zeman |
user:zeman:interset:how-to-write-a-driver [2007/10/01 13:51] zeman Link fix. |
||
---|---|---|---|
Line 11: | Line 11: | ||
This function has one string argument, the tag. The function returns a reference to a hash of features (feature names are hash keys to the feature values). | This function has one string argument, the tag. The function returns a reference to a hash of features (feature names are hash keys to the feature values). | ||
- | The decoder is not obliged to set any feature. If the decoder decides to set a feature, it should be one of the pre-defined values. This can be checked by a central procedure. However, it is not mandatory, so if the appropriate value is not available, you can use your own, but please do **[[zeman@ufal.mff.cuni.cz|let me know]]** so I can update the central value pool accordingly. | + | The decoder is not obliged to set any feature. If the decoder decides to set a feature, it should be one of the pre-defined values. This can be checked by a central procedure. However, it is not mandatory, so if the appropriate value is not available, you can use your own, but please do **[[zeman@ufal.mff.cuni.cz|let me know]]** so I can update the [[features|central value pool]] accordingly. |
If the tagset encodes features separately (e.g., each character is a value of a particular feature): The decoder should be tolerant to unexpected combinations of features (or should be able to be tolerant if asked for it). | If the tagset encodes features separately (e.g., each character is a value of a particular feature): The decoder should be tolerant to unexpected combinations of features (or should be able to be tolerant if asked for it). | ||
+ | |||
+ | |||
===== encode() ===== | ===== encode() ===== | ||
Line 19: | Line 21: | ||
This function has one argument, a reference to a hash of features (feature names are hash keys to the feature values). The function returns a string - the tag. | This function has one argument, a reference to a hash of features (feature names are hash keys to the feature values). The function returns a string - the tag. | ||
- | The encoder should be able to process all possible values from the central pool. If the tagset does not recognize a value, the most appropriate substitute should be chosen. | + | The encoder should be able to process all possible values from the [[features|central pool]]. If the tagset does not recognize a value, the most appropriate substitute should be chosen. |
- | Since any feature can in theory have an array of values instead of a single value, the encoder should either be prepared to arrays (more precisely: array references) anywhere, or call tagset:: | + | Since any feature can in theory have an array of values instead of a single value, the encoder should either be prepared to arrays (more precisely: array references) anywhere, or call '' |
- | **WARNING: | + | **WARNING: |
===== list() ===== | ===== list() ===== | ||
Line 101: | Line 103: | ||
To perform the test, run the script '' | To perform the test, run the script '' | ||
- |