명명 충돌
Naming collision명명 충돌은 주어진 네임스페이스 또는 특정 범위에 있는 둘 이상의 식별자를 명확하게 해결할 수 없는 상황이며, 그러한 모호하지 않은 분해능은 기본 시스템의 요구 사항이다.null
예: XML 요소 이름
XML에서 요소 이름은 문서에 포함된 정보의 유형을 반영하도록 생성 및 변경할 수 있다.이러한 수준의 유연성은 별도의 문서가 서로 다른 종류의 정보를 인코딩하지만 요소 이름에 동일한 식별자를 사용하는 경우 문제를 일으킬 수 있다.null
예를 들어, 다음의 샘플 문서는 "사람" 문서와 "책" 문서에 대한 기본 의미론을 정의한다.이 두 가지 모두 "제목" 요소를 사용하지만 의미는 같지 않다.
<뿌리 사람> 낸시 <이름> 다볼리오 </lname> 닥터.</연령>29세 <</사람>> <책>>해리 포터와 저주받은 아이즈ABCD1234567 </isbn> </book> </root>
사용자가 "제목" 요소를 올바르게 쿼리하고 검색할 수 있는 응용프로그램의 경우, 요청 중인 제목 요소를 명확하게 지정할 수 있는 방법을 제공해야 한다.그렇지 않으면 제목 요소(이 의도하지 않은 유사성을 공유한 다른 요소뿐만 아니라)에 명명 충돌이 발생할 수 있다.null
앞의 예에서, 문서 자체의 구조("루트" 요소에 의해 지정됨)에는 요소 이름을 모호하지 않게 해결하는 수단을 제공하기에 충분한 정보가 있다.null
예를 들어 XPath 사용:
//root/person/properties;; 사람에 대한 정식 제목 //root/book/prot;; 책의 제목
충돌 도메인
![]() |
충돌 영역이라는 용어는 또한 단일 이름이나 식별자가 서로 다른 계층이나 처리에 의한 다중 해석에 개방되어 있는 시스템을 가리키는 데 사용될 수 있다.네임스페이스의 개념은 원치 않는 충돌을 피하기 위한 소프트웨어 프로그래밍 관행으로 널리 채택되어 왔다.네트워킹 분야에서 그것의 용도는 피상적으로 비슷하지만 현실에서는 상당히 다르다는 점에 유의한다.null