맵 메시지의 본문은 이름-값 쌍 세트를 포함합니다. 이 때 각 값은 연관된 데이터 유형을 갖습니다.
각 이름-값 쌍에서 이름은 값을 식별하는 문자열이며 값은 표 1에 나열된 XMS 데이터 유형 중 하나인 응용프로그램 데이터의 요소입니다. 이름-값 쌍의 순서는 정의되지 않습니다. MapMessage 클래스는 이름-값 쌍을 설정하고 가져오는 메소드를 포함합니다.
응용프로그램은 이름을 지정하여 이름-값 쌍에 임의로 액세스할 수 있습니다. 또는 C 또는 C++ 응용프로그램이 반복기를 사용하여 순차적으로 이름-값 쌍에 액세스할 수 있습니다. 응용프로그램이 MapMessage 클래스의 Get Name-Value Pairs 메소드를 호출하여 Property 오브젝트의 목록을 캡슐화하는 반복기를 작성할 수 있습니다. 각 Property 오브젝트가 이름-값 쌍을 캡슐화합니다. 그러면 응용프로그램이 Iterator 클래스의 메소드를 사용하여 각 Property 오브젝트를 차례로 검색하고 Property 클래스의 메소드를 사용하여 각 이름-값 쌍의 값, 이름 및 데이터 유형을 검색할 수 있습니다. 이름-값 쌍이 등록 정보가 아닌 경우에도 Property 클래스의 메소드가 이름-값 쌍을 등록 정보로 취급합니다.
.NET 응용프로그램은 Get Map Names .NET 등록 정보를 사용하여 맵 메시지 본문 내의 이름 열거를 가져올 수 있습니다.
응용프로그램이 이름-값 쌍의 값을 가져올 때 값은 XMS에 의해 다른 데이터 유형으로 변환될 수 있습니다. 예를 들어, 맵 메시지 본문에서 정수를 가져오려면 응용프로그램이 문자열로 정수를 리턴하는 MapMessage 클래스의 Get String 메소드를 호출할 수 있습니다. 지원되는 변환은 XMS 등록 정보 값을 한 데이터 유형에서 다른 유형으로 변환할 때 지원되는 것과 동일합니다. 지원되는 변환에 대한 자세한 정보는 한 데이터 유형에서 다른 데이터 유형으로 등록 정보 값의 내부 변환을 참조하십시오.
응용프로그램이 맵 메시지를 작성한 후에는 메시지 본문이 읽기 및 쓰기가 가능하게 됩니다. 응용프로그램이 메시지를 전송한 후에도 여전히 읽기 및 쓰기가 가능합니다. 응용프로그램이 맵 메시지를 수신할 때 메시지 본문은 읽기 전용입니다. 맵 메시지 본문이 쓰기 전용일 때 응용프로그램이 Message 클래스의 Clear Body 메소드를 호출하면 본문이 읽기 및 쓰기가 가능하게 됩니다. 또한 메소드가 본문을 지웁니다.