XML DML(XML 데이터 수정 언어)

XML DML(XML 데이터 수정 언어)은 XQuery 언어의 확장 언어입니다. W3C에 의해 정의된 바와 같이 XQuery 언어에는 DML(데이터 조작 언어) 부분이 부족합니다. 이 항목에서 설명되는 XML DML과 XQuery 언어는 xml 데이터 형식에 대해 사용할 수 있는 완벽한 기능의 쿼리 및 데이터 조작 언어를 제공합니다.

XML DML은 XQuery에 대해 다음과 같은 대/소문자 구분 키워드를 추가합니다.

  • insert

  • delete

  • replace value of

xml 데이터 형식에 설명된 것과 같이 xml 형식의 변수 및 열을 만들고 XML 문서 또는 조각을 여기에 할당할 수 있습니다. 이러한 XML 인스턴스를 수정 또는 업데이트하려면 다음을 수행합니다.

일부 특성은 해당 값을 삽입, 삭제 또는 수정할 수 없습니다. 예를 들면 다음과 같습니다.

  • 형식화된 또는 형식화되지 않은 xml의 경우 특성은 xmlns, xmlns:*xml:base입니다.

  • 형식화된 xml의 경우 특성은 xsi:nilxsi:type입니다.

다른 제한 사항은 다음과 같습니다.

  • 형식화된 또는 형식화되지 않은 xml의 경우 xml:base 특성을 삽입하면 오류가 발생합니다.

  • 형식화된 xml의 경우 xsi:nil 특성을 삭제 및 수정하면 오류가 발생합니다. 형식화되지 않은 xml의 경우 특성을 삭제하거나 해당 값을 수정할 수 있습니다.

  • 형식화된 xml의 경우 xs:type 특성의 값을 수정하면 오류가 발생합니다. 형식화되지 않은 xml의 경우 특성 값을 수정할 수 있습니다.

형식화된 XML 인스턴스를 수정하는 경우 최종 형식은 해당 유형의 유효한 인스턴스여야 합니다. 그렇지 않으면 유효성 검사 오류가 반환됩니다.