XML 의 Schema 제약 조건 (1)

7086 단어 XML
성명: 본문 대부분 내용 참고http://www.w3school.com.cn/schema/index.asp
스키 마 기본 지식
1 XML Schema 는 XML 기반 DTD 대체 자 입 니 다.XML Schema 는 XML 문서 의 구 조 를 설명 할 수 있 습 니 다.
2 XML Schema 의 역할
  • 문서 에 나타 날 수 있 는 요 소 를 정의 합 니 다
  • 문서 에 나타 날 수 있 는 속성 정의
  • 어떤 요소 가 하위 요소 인지 정의 합 니 다
  • 하위 요소 의 순 서 를 정의 합 니 다
  • 하위 요소 의 수 를 정의 합 니 다
  • 요소 가 비어 있 거나 텍스트 를 포함 할 수 있 는 지 정의 합 니 다
  • 요소 와 속성 을 정의 하 는 데이터 형식
  • 요소 와 속성 을 정의 하 는 기본 값 과 고정 값
  • 이 스키 마 원소
    1. 요소 요 소 는 모든 XML Schema 의 루트 요소 입 니 다.
    
    
    
    
    ...
    ...
    
    
    

    2 간단 한 Schema 성명
    
     
    
    
    ...
    ...
    
    

    코드 설명:
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    

    schema 에 사용 할 요소 와 데이터 형식 을 네 임 스페이스 에서 표시 합 니 다. "http://www.w3.org/2001/XMLSchema”。동시에 네 임 스페이스 에서 왔 다 고 규정 했다 "http://www.w3.org/2001/XMLSchema"요소 와 데이터 형식 은 접두사 xs 를 사용 해 야 합 니 다.
    targetNamespace="http://www.w3school.com.cn" 
    

    이 schema 가 정의 하 는 요 소 를 네 임 스페이스 에서 표시 합 니 다. "http://www.w3school.com.cn”。
    xmlns="http://www.w3school.com.cn" 
    

    기본 네 임 스페이스 는 "http://www.w3school.com.cn”。
    elementFormDefault="qualified" 
    

    XML 인 스 턴 스 문서 에 사용 되 고 이 schema 에서 설명 한 요 소 는 네 임 스페이스 에 한정 되 어야 합 니 다.
    단순 유형
    1. XSD 간이 요 소 는 텍스트 만 포함 하 는 요 소 를 말 합 니 다.그것 은 다른 요소 나 속성 을 포함 하지 않 습 니 다.간단 한 요 소 를 정의 하 는 문법:
    
    

    여기 xxx 는 요소 의 이름 을 말 합 니 다. yy 는 요소 의 데이터 형식 을 말 합 니 다.XML Schema 는 내장 데이터 형식 을 많이 가지 고 있 습 니 다.
    가장 많이 사용 되 는 유형 은:
  • xs:string
  • xs:decimal
  • xs:integer
  • xs:boolean
  • xs:date
  • xs:time

  • 이것 은 XML 요소 들이다.
    Smith
    28
    1980-03-27
    

    이것 은 해당 하 는 간단 한 요소 정의 입 니 다.
    
    
     
    

    간이 요소 의 기본 값 과 고정 값: 간이 요 소 는 지정 한 기본 값 이나 고정 값 을 가 질 수 있 습 니 다.다른 값 이 정 해 지지 않 으 면 기본 값 은 요소 에 자동 으로 분 배 됩 니 다.아래 의 예 에서 결 성 된 값 은 "red" 입 니 다.
    
    

    고정 값 역시 원소 에 자동 으로 분배 되 며, 다른 값 을 정할 수 없습니다.아래 의 예 에서 고정 값 은 "red" 입 니 다.
    
    

    2 XSD 속성
    모든 속성 은 간단 한 형식 으로 설명 합 니 다.간이 요 소 는 속성 을 가 질 수 없습니다.만약 어떤 원소 가 속성 을 가지 고 있다 면, 그것 은 어떤 복합 유형 으로 여 겨 질 것 이다.그러나 속성 자 체 는 항상 간단 한 유형 으로 밝 혀 진다.속성 을 정의 하 는 문법 은:
    
    

    여기 서 xxx 는 속성 이름 을 가리 키 고 yy 는 속성의 데이터 형식 을 규정 합 니 다.
    이것 은 속성 이 있 는 XML 요소 입 니 다:
    Smith
    

    이것 은 대응 하 는 속성 정의 입 니 다:
    
    

    속성의 기본 값 과 고정 값: 속성 은 지정 한 기본 값 이나 고정 값 을 가 질 수 있 습 니 다.다른 값 이 정 해 지지 않 으 면 기본 값 은 요소 에 자동 으로 분 배 됩 니 다.다음 예 에서 결 성 된 값 은 "EN" 입 니 다.
    
    

    고정 값 역시 원소 에 자동 으로 분배 되 며, 다른 값 을 정할 수 없습니다.다음 예 에서 고정 값 은 "EN" 입 니 다.
    
    

    선택 가능 하고 필요 한 속성: 부족 한 상황 에서 속성 은 선택 할 수 있 습 니 다.속성 을 필수 로 규정 하려 면 "use" 속성 을 사용 하 십시오.
    
    

    3 XSD 한정 / 얼굴
    한정 (restriction) 은 XML 요소 나 속성 정의 에 사용 할 수 있 는 값 입 니 다.XML 요소 에 대한 한정 을 facet 라 고 합 니 다.
    한 그룹의 값 에 대한 한정: XML 요소 의 내용 을 받 아들 일 수 있 는 값 으로 제한 하려 면 매 거 진 제약 (enumeration constraint) 을 사용 해 야 합 니 다.아래 의 예 는 'car' 라 는 한 정 된 요 소 를 정의 합 니 다.받 아들 일 수 있 는 값 은 Audi, Golf, BMW:
    
    
    
      
        
        
        
      
    
    
     
    

    일련의 값 에 대한 제한: XML 요소 의 내용 을 일련의 사용 가능 한 숫자 나 자모 로 정의 하려 면 패턴 제약 (pattern constraint) 을 사용 해 야 합 니 다.아래 의 예 는 'letter' 라 는 한 정 된 요 소 를 정의 합 니 다.받 아들 일 수 있 는 값 은 소문 자 a - z 중 하나 입 니 다:
    
    
    
      
        
      
    
    
     
    

    다음 예 는 'initials' 라 는 한 정 된 요 소 를 정의 합 니 다.받 아들 일 수 있 는 값 은 대문자 A - Z 중 세 개 입 니 다.
    
    
    
      
        
      
    
    
     
    

    일련의 값 에 대한 다른 한정: 아래 의 예 는 'letter' 라 는 한 정 된 요 소 를 정의 합 니 다.받 아들 일 수 있 는 값 은 a - z 중 0 개 또는 여러 글자 입 니 다.
    
    
    
      
        
      
    
    
     
    

    공백 문자 에 대한 한정: 공백 문자 (whitespace characters) 에 대한 처리 방식 을 규정 하려 면 whiteSpace 한정 을 사용 해 야 합 니 다.
    다음 예 는 'address' 라 는 한 정 된 요 소 를 정의 합 니 다.이 whiteSpace 한정 은 "preserve" 로 설정 되 어 있 습 니 다. 이것 은 XML 프로세서 가 빈 문 자 를 제거 하지 않 음 을 의미 합 니 다.
    
    
    
      
        
      
    
    
     
    

    이 예 는 'address' 라 는 한 정 된 요 소 를 정의 했다.이 whiteSpace 는 "replace" 로 한정 되 어 있 습 니 다. 이것 은 XML 프로세서 가 모든 공백 문 자 를 제거 한 다 는 것 을 의미 합 니 다 (줄 바 꾸 기, 리 턴, 빈 칸, 탭 문자).
    
    
    
      
        
      
    
    
     
    

    이 예 는 'address' 라 는 한 정 된 요 소 를 정의 했다.이 whiteSpace 는 "collapse" 로 한정 되 어 있 습 니 다. 이것 은 XML 프로세서 가 모든 공백 문 자 를 제거 한 다 는 것 을 의미 합 니 다. (줄 바 꾸 기, 리 턴, 빈 칸, 탭 문 자 는 빈 칸 으로 바 뀌 고 시작 과 끝 에 있 는 빈 칸 은 제거 되 며 여러 개의 연속 적 인 빈 칸 은 하나의 빈 칸 으로 줄 어 듭 니 다)
    
    
    
      
        
      
    
    
     
    

    길이 에 대한 제한: 요소 의 중간 값 의 길 이 를 제한 하려 면 length, maxLength 와 minLength 를 사용 하여 제한 해 야 합 니 다.이 예 는 'password' 라 는 한 정 된 요 소 를 정의 합 니 다.그 값 은 최소 5 글자, 최대 8 글자 입 니 다.
    
    
    
      
        
        
      
    
    
    
    

    좋은 웹페이지 즐겨찾기