XML 튜토리얼

XML 홈 XML 소개 XML 사용 방법 XML 트리 XML 구문 XML 요소 XML 속성 XML 네임스페이스 XML 표시 XML HttpRequest XML 파서 XML DOM XML XPath XML XSLT XML XQuery XML XLink XML 유효성 검사기 XML DTD XML 스키마 XML 서버 XML 예제 XML 퀴즈 XML 인증서

XML AJAX

AJAX 소개 AJAX XMLHttp AJAX 요청 AJAX 응답 AJAX XML 파일 AJAX PHP AJAX ASP AJAX 데이터베이스 AJAX 애플리케이션 AJAX 예제

XML DOM

DOM 소개 DOM 노드 DOM 액세스 DOM 노드 정보 DOM 노드 목록 DOM 순회 DOM 탐색 DOM 값 가져오기 DOM 변경 노드 DOM 제거 노드 DOM 교체 노드 DOM 생성 노드 DOM 추가 노드 DOM 복제 노드 DOM 예제

XPath 튜토리얼

XPath 소개 XPath 노드 XPath 구문 XPath 축 XPath 연산자 XPath 예제

XSLT 튜토리얼

XSLT 소개 XSL 언어 XSLT 변환 XSLT <템플릿> XSLT <값> XSLT <각각> XSLT <정렬> XSLT <만약> XSLT <선택> XSLT 적용 클라이언트의 XSLT 서버의 XSLT XSLT XML 편집 XSLT 예

XQuery 튜토리얼

XQuery 소개 XQuery 예제 XQuery FLWOR 엑스쿼리 HTML XQuery 용어 XQuery 구문 XQuery 추가 XQuery 선택 XQuery 함수

XML DTD

DTD 소개 DTD 빌딩 블록 DTD 요소 DTD 속성 DTD 요소 대 속성 DTD 엔터티 DTD 예

XSD 스키마

XSD 소개 XSD 방법 XSD <스키마> XSD 요소 XSD 속성 XSD 제한 사항

XSD 컴플렉스

XSD 요소 XSD 비어 있음 XSD 요소만 XSD 텍스트만 XSD 혼합 XSD 지표 XSD <모든> XSD <모든 속성> XSD 대체 XSD 예

XSD 데이터

XSD 문자열 XSD 날짜 XSD 숫자 XSD 기타 XSD 참조

서비스

XML 서비스 XML WSDL XML SOAP XML RDF XML RSS

참고문헌

DOM 노드 유형 DOM 노드 DOM 노드 목록 DOM NamedNodeMap DOM 문서 DOM 요소 DOM 속성 DOM 텍스트 DOM CDATA DOM 주석 DOM XMLHttpRequest DOM 파서 XSLT 요소 XSLT/XPath 함수

XML 스키마 자습서


XML 스키마란 무엇입니까?

XML 스키마는 XML 문서의 구조를 설명합니다.

XML 스키마 언어는 XSD(XML 스키마 정의)라고도 합니다.

XSD 예

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

<xs:element name="note">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="to" type="xs:string"/>
      <xs:element name="from" type="xs:string"/>
      <xs:element name="heading" type="xs:string"/>
      <xs:element name="body" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>

</xs:schema>

XML 스키마의 목적은 XML 문서의 법적 빌딩 블록을 정의하는 것입니다.

  • 문서에 나타날 수 있는 요소 및 속성
  • 자식 요소의 수(및 순서)
  • 요소 및 속성의 데이터 유형
  • 요소 및 속성의 기본값 및 고정 값

왜 XML 스키마를 배우는가?

XML 세계에서는 수백 가지의 표준화된 XML 형식이 매일 사용됩니다.

이러한 XML 표준의 대부분은 XML 스키마에 의해 정의됩니다.

XML 스키마는 DTD에 대한 XML 기반(그리고 더 강력한) 대안입니다.



XML 스키마는 데이터 유형을 지원합니다.

XML 스키마의 가장 큰 장점 중 하나는 데이터 유형에 대한 지원입니다.

  • 허용되는 문서 내용을 설명하는 것이 더 쉽습니다.
  • 데이터의 정확성을 검증하는 것이 더 쉽습니다.
  • 데이터 패싯(데이터에 대한 제한 사항)을 정의하는 것이 더 쉽습니다.
  • 데이터 패턴(데이터 형식)을 정의하는 것이 더 쉽습니다.
  • 서로 다른 데이터 유형 간에 데이터를 변환하는 것이 더 쉽습니다.

XML 스키마는 XML 구문을 사용합니다.

XML 스키마의 또 다른 큰 장점은 XML로 작성된다는 것입니다.

  • 새로운 언어를 배울 필요가 없다
  • XML 편집기를 사용하여 스키마 파일을 편집할 수 있습니다.
  • XML 파서를 사용하여 스키마 파일을 구문 분석할 수 있습니다.
  • XML DOM을 사용하여 스키마를 조작할 수 있습니다.
  • XSLT를 사용하여 스키마를 변환할 수 있습니다.

XML 스키마는 XML로 작성되었기 때문에 확장 가능합니다.

확장 가능한 스키마 정의를 사용하여 다음을 수행할 수 있습니다.

  • 다른 스키마에서 스키마 재사용
  • 표준 유형에서 파생된 고유한 데이터 유형 생성
  • 동일한 문서에서 여러 스키마 참조

XML 스키마 보안 데이터 통신

발신자에서 수신자에게 데이터를 보낼 때 두 부분이 내용에 대해 동일한 "기대"를 가져야 합니다.

XML 스키마를 사용하여 발신자는 수신자가 이해할 수 있는 방식으로 데이터를 설명할 수 있습니다.

"03-11-2004"와 같은 날짜는 일부 국가에서는 3.November로 해석되고 다른 국가에서는 11.March로 해석됩니다.

그러나 다음과 같은 데이터 유형을 가진 XML 요소:

<date type="date">2004-03-11</date>

XML 데이터 유형 "날짜"에는 "YYYY-MM-DD" 형식이 필요하기 때문에 내용의 상호 이해를 보장합니다.


잘 형성된 것만으로는 충분하지 않습니다

잘 구성된 XML 문서는 다음과 같은 XML 구문 규칙을 준수하는 문서입니다.

  • XML 선언으로 시작해야 합니다.
  • 하나의 고유한 루트 요소가 있어야 합니다.
  • 시작 태그에는 일치하는 종료 태그가 있어야 합니다.
  • 요소는 대소문자를 구분합니다
  • 모든 요소를 ​​닫아야 합니다.
  • 모든 요소는 적절하게 중첩되어야 합니다.
  • 모든 속성 값은 따옴표로 묶어야 합니다.
  • 엔터티는 특수 문자에 사용해야 합니다.

문서가 제대로 구성되어 있더라도 여전히 오류가 포함될 수 있으며 이러한 오류는 심각한 결과를 초래할 수 있습니다.

다음 상황을 생각해 보십시오. 5대의 레이저 프린터 대신 총 5대의 레이저 프린터를 주문합니다. XML 스키마를 사용하면 이러한 오류의 대부분은 유효성 검사 소프트웨어에서 포착할 수 있습니다.