Pozycja w katalogu XML składa się z dwóch części - klucza (reprezentującego definicję DTD lub schemat XML) oraz identyfikatora URI (zawierającego informacje o położeniu definicji DTD lub schematu XML). Klucz można umieścić w pliku XML. Kiedy procesor XML go znajdzie, użyje pozycji katalogu XML do znalezienia położenia definicji DTD lub schematu XML powiązanego z tym kluczem.
Pozycje katalogu XML mogą być wykorzystywane w różnych sytuacjach. Jeśli na przykład pracujesz na pliku XML przy użyciu podstawowego komputera desktop i skierujesz schemaLocation na schemat c:\MySchema.xsd, to możesz zapisać plik na komputerze laptop, aby pracować na nim w innym terminie. Kiedy jednak otworzysz plik na komputerze laptop, wystąpi problem. Edytor XML nie będzie mógł znaleźć schematu MySchema.xsd, ponieważ jest on w rzeczywistości zapisany na dysku D. Trzeba więc będzie zmienić wartość schemaLocation, aby wskazywała na d:\MySchema.xsd. Po zakończeniu edycji pliku XML, a przed opublikowaniem go na stronie WWW należy znowu zmienić identyfikator URI tak, aby wskazywał na zasób dostępny z poziomu sieci WWW. Jak widać, problem jest oczywisty. Identyfikator URI w pliku XML nie jest tak przenośny, jak powinien być. Aby nie trzeba było wprowadzać częstych zmian w dokumencie XML, można użyć katalogu XML.
Pozycja katalogu XML jest wykorzystywana przez procesor XML przy rozwiązywaniu odwołań do encji. Można udostępnić reguły do katalogu, które będą określać, jak mają być rozwiązywane encje. Wracając do poprzedniego przykładu, można określić regułę, która będzie przekierowywać odwołanie do zasobu internetowego (na przykład "http://www.ibm.com/published-schemas/MySchema.xsd") tak, aby wskazywało ono na zasób umieszczony na lokalnym komputerze programisty (na przykład "file:///C:/MySchema.xsd"). Zamiast ciągle zmieniać dokumenty XML w celu zaktualizowania identyfikatorów URI (co może być szczególnie uciążliwe, jeśli w projekcie jest wiele dokumentów), wystarczy wówczas zaktualizować jedną regułę w katalogu XML.
Poniższe instrukcje zostały napisane dla perspektywy Zasób, ale będą też działać w wielu innych perspektywach.
Aby dodać pozycję do katalogu XML, wykonaj następujące czynności: