Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Проверка на корреектнось uid документу #18

Open
Rexarrior opened this issue Oct 3, 2018 · 2 comments
Open
Assignees
Labels
type/bug Something isn't working type/code maintenance New feature/requirement that focuses on improving architecture, realization and code style

Comments

@Rexarrior
Copy link
Collaborator

При парсинге мы столкнулись с ошибкой на сайте - документы 259-О/2015 и 258-О/2015 оба опубликованы под номером 259-О/2015. Нужно встроить в парсер проверку таких ситуаций. Желаательно - путем проверки соответствия текста каждого документа его номеру.

@navolotsky
Copy link
Member

Текст мы получаем после того, как получаем заголовки. Если ошибка в номере на сайте состоит в том, что два документа имеют одинаковый номер, то в текущей реализации оба попадут в категорию неуникальных, которая отбрасывается при дальнейшей обработке. Если мы хотим выявить такие ошибки (на сайте ksrf такая пока одна), то придется написать проверку неуникальных документов, и при условии, что в этих документах не встретится второй вид ошибки, разделить эти документы на уникальные будет просто.
Второй вид ошибки, это когда номер на сайте уникальный, но в документе он другой, т.е. либо этот документ относится к другому решению (придется искать по базе имеющихся номеров), либо ошибка в написании номере на сайте (что наиболее вероятно после предыдущего случая), либо в документ забыли добавить номер или ошиблись в нем. Предпоследний случай встречается в протокольных решениях, большинство из которых имею обозначения типа ПР-{число}, встречаемые в документах этих решений, и, по-видимому, не считающиеся номером (нет знака № как в обычных уникальных решениях). Также есть несколько старых протокольных решений под кодом О-Пр/2009, которые в принципе в документах не имеют обозначения, даже этого самого О-Пр/2009. Протокольные решения нас не интересуют. Однако нужно решить, как для обычных документов будет интерпретироваться отсутствие номера в уникальных документах (важно написать правильно работающий парсинг).

Поскольку проверка номеров использует базу уже проверенных номеров, проверку придётся делать в три этапа:

  1. Проверка на совпадение номера в документе для решений с уникальным номером. Прошедшие проверку включатся в базу с проверенными номерами или получают пометку о проверке, или просто отдельно сохраняется список проверенных номеров, имеющихся на сайте. Не прошедшие получает соответствующую пометку.
  2. Проверка неуникальных и попытка отделить от них уникальные, используя базу проверенных. Отделенные уникальные добавляются в базу проверенных
  3. Проверка не прошедших проверку уникальных и попытка исправить ошибки, используя базу проверенных.

Все эти ошибки могут вызвать ненахождение их по номеру (ведь ссылаются на них по корректному номеру), и критичны для цитируемых решений. Для нецитируемых это будет означать просто появление в графе под некорректным номером. В целом, как представляется, таких ошибок ничтожное количество и вряд ли они связаны с важными документами. Эти мелкие случаи утонут среди 31 тыс. документов.

@Rexarrior Rexarrior removed this from the Первая итерация milestone Oct 8, 2018
@Rexarrior Rexarrior added type/bug Something isn't working type/code maintenance New feature/requirement that focuses on improving architecture, realization and code style and removed architecture labels Oct 8, 2018
@navolotsky
Copy link
Member

Ну это не баг, если только баг сайта)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/bug Something isn't working type/code maintenance New feature/requirement that focuses on improving architecture, realization and code style
Projects
None yet
Development

No branches or pull requests

4 participants