Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
user:zeman:interset:how-to-write-a-driver [2007/10/01 14:29] zeman Replacing values. |
user:zeman:interset:how-to-write-a-driver [2007/10/01 14:47] zeman \&decode |
||
---|---|---|---|
Line 93: | Line 93: | ||
**Note:** This approach cannot encode situations where some combinations of feature values are plausible and some are not! For instance, if positions [2] and [3] in a tag encode gender and number, respectively, | **Note:** This approach cannot encode situations where some combinations of feature values are plausible and some are not! For instance, if positions [2] and [3] in a tag encode gender and number, respectively, | ||
+ | |||
+ | |||
===== Replacing feature values with defaults ===== | ===== Replacing feature values with defaults ===== | ||
Line 108: | Line 110: | ||
{ | { | ||
# Store the hash reference in a global variable. | # Store the hash reference in a global variable. | ||
- | $permitvals = tagset:: | + | $permitvals = tagset:: |
} | } | ||
... | ... | ||
$replacement = tagset:: | $replacement = tagset:: | ||
</ | </ | ||
+ | |||
+ | If array is an allowed value, it can be matched only against an array where all elements match. (However, order of elements in array is not significant.) If array needs to be replaced, we first check whether a subarray is allowed. (Again, there should be ordering of value priorities.) If not, we look simultaneously for replacements of all elements. Only one replacement value is selected. | ||
===== Common problems ===== | ===== Common problems ===== |