@XMLRootElement

복합 특성 @XMLRootElement는 루트 XML 요소에 대한 이름 지정과 데이터 유형 세부사항을 제공합니다. 루트 XML 요소는 XML 문자열에서 최상위인 가장 포괄적인 요소입니다. 특성 필드는 다음과 같습니다.
name
루트 XML 요소의 이름입니다. 기본값은 레코드 파트의 이름입니다.

레코드를 XML 문자열에 기록할 경우 특성 필드의 값이 XML 문자열의 최상위 요소에 지정됩니다. XML 문자열을 레코드로 읽을 경우 최상위 XML 요소의 이름이 특성 필드의 값과 일치하지 않으면 EGL 런타임에서 RuntimeException을 발행합니다.

namespace
루트 XML 요소와 연관된 XML 네임스페이스(있는 경우)입니다. 기본 네임스페이스라도 네임스페이스를 명시적으로 지정해야 합니다.
네임스페이스를 지정하면 다음 명령문이 적용됩니다.
  • 레코드를 XML 문자열에 기록할 경우 네임스페이스가 지정됩니다. 이 경우 EGL 런타임에서 네임스페이스 접두부를 지정합니다.
  • XML 문자열을 레코드로 읽을 경우 요소가 지정된 네임스페이스에 없으면 XML 문자열의 네임스페이스를 접두부로 지정했는지 또는 네임스페이스 기본값으로 지정했는지 여부에 관계 없이 RuntimeException이 발생합니다.
네임스페이스를 지정하지 않으면 다음 명령문이 적용됩니다.
  • 레코드를 XML 문자열에 기록할 경우 네임스페이스 접두부가 지정되지 않으며 요소가 네임스페이스에 없습니다.
  • XML 문자열을 레코드로 읽을 경우 요소가 네임스페이스에 없으면 RuntimeException이 발생합니다.
nillable
XML 문자열에 쓸 요소가 nillable인지 여부를 표시하는 부울 값입니다. 선택사항은 다음과 같습니다.
  • 값이 false(기본값)인 경우 컨텐츠가 널이면 EGL 런타임에서 XML 문자열에 요소를 기록하지 않습니다.
  • 값이 true인 경우 레코드의 널을 XML 문자열에 기록하려고 하면 속성 값 xsi:nil="true"를 포함하고 기타 속성은 포함하지 않는 빈 요소가 발생합니다.

레코드 필드의 널 입력 가능 측면은 EGL 런타임에서 XML 문자열을 레코드로 읽는 경우 발생하는 상황에 영향을 미칩니다.