У меня есть WORDTABLE, содержащий числа, выраженные в виде строк (ноль, один, два, ..., n) плюс соответствующие цифры в качестве функций. Я пытаюсь аннотировать последовательность фиксированной длины строковых чисел.UIMA ruta аннотирует последовательность фиксированной длины, содержащую слова из определенного списка слов
Например:
один два три четыре -> должен быть аннотированный
один два три четыре пять шесть -> не должен быть аннотированным
До сих пор я сделал
WORDTABLE numbers = "numbers.csv";
DECLARE Annotation number(STRING int_string, STRING digit);
DECLARE Annotation numberSequence;
Document{-> MARKTABLE(number, 1, numbers, "digit" = 2)};
(number number) {-> MARK(numberSequence)};
Это соответствует последовательности, содержащей n строковое число, я хочу установить длину последовательности, некоторые вещи, как:
number[4,4] {-> MARK(numberSequence)};
, где минимальные и максимальные лексемы в предложении, содержащее строковое число должны быть равны, например, 4. Можно ли это сделать?
Как вы пытались применить последнее правило? Возможно, вам придется расширить его, чтобы избежать совпадений в более длинных последовательностях: 'ANY {-PARTOF (number)} @number [4,4] {-> MARK (numberSequence)} ANY {-PARTOF (number)};' –
что я хотел сказать: '[4,4]' является допустимой конструкцией. Может быть, вы хотите добавить -PARTOF (число), чтобы избежать совпадений совпадений? –
Привет, Питер, спасибо, что ответили мне. Я не уверен, что вы подразумеваете под «как вы пытались применить последнее правило». Я использовал в качестве тестовых предложений те, которые я написал поверх моего вопроса, и сценарий аннотировал оба. Кстати, я попытался расширить правило, как вы предлагали, и действительно работает так, как я хотел. Должен ли ты сказать это как ответ, чтобы я мог принять его? – user5608277