WikiDer > Коллизия имен
А коллизия имен это обстоятельство, когда два или более идентификаторы в данном пространство имен или данный объем не может быть однозначно решено, и такое однозначное разрешение является требованием базовой системы.
Пример: имена элементов XML
В XMLимена элементов могут быть созданы и изменены для отражения типа информации, содержащейся в документе. Такой уровень гибкости может вызвать проблемы, если отдельные документы кодируют разные виды информации, но используют одни и те же идентификаторы для имен элементов.
Например, следующий образец документа определяет базовую семантику для документа «человек» и документа «книга». Оба они используют элемент «title», но значение не одно и то же:
<root> <person> <fname>Нэнси</fname> <lname>Даволио</lname> <title>Доктор</title> <age>29</age> </person> <book> <title>РС.</title> <isbn>ABCD1234567</isbn> </book></root>
Чтобы приложение позволяло пользователю правильно запрашивать и извлекать элемент "title", оно должно предоставлять способ однозначно указать который элемент заголовка запрашивается. Несоблюдение этого правила приведет к конфликту имен в элементе заголовка (а также в любых других элементах, которые разделяют это непреднамеренное сходство).
В предыдущем примере в структуре самого документа (которая определяется «корневым» элементом) достаточно информации, чтобы обеспечить средства однозначного разрешения имен элементов.
Например, используя XPath:
// root / person / title ;; формальное название человека // root / book / title ;; название книги
Домен коллизии
эта статья возможно содержит оригинальные исследования. (Сентябрь 2007 г.) (Узнайте, как и когда удалить этот шаблон сообщения) |
Период, термин область столкновения может также использоваться для обозначения системы, в которой одно имя или идентификатор открыты для множественной интерпретации различными уровнями или обработкой. Понятие о пространство имен получил широкое распространение как программное обеспечение практика для предотвращения нежелательных столкновений.