Microsoft MVP성태의 닷넷 이야기
사용 사례 : 2.1 XSDObjectGen - Enum 처리 방식 변경 [링크 복사], [링크+제목 복사],
조회: 2472
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
부모글 보이기/감추기
(연관된 글이 1개 있습니다.)
우선, 지난 토픽에서의 Enum 에 대한 처리를 정리해 보면. 다음과 같이 "id" 속성을 빌려서 했었지요.
근데, id 가 문서에서 유일해야 하는 속성이라는 점을 감안하면 가능한 쓰지 말아야 겠다는 판단이 서게 되었습니다.

예를 들어, enum 을 2개를 정의해야 하는 상황이 오게 되면, 다른 enum XSD 정의에서는 절대로 동일한 facet 이 나와서는 안되는 제약이 걸리게 되는 셈인데요.

그래서, xs:annotation 을 쓰기로 결정했습니다.

따라서, 지난 번의 아래와 같은 정의를 예로 들어 보면.

  <xs:simpleType name="ProtocolEnum">
    <xs:restriction base="xs:short">
      <xs:enumeration id="HTTP" value="80" />
      <xs:enumeration id="HTTPS" value="8080" />
    </xs:restriction>
  </xs:simpleType>

SmallTool ver 1,0,0,8 부터는 다음과 같이 해주어야 원하는 코드를 정상적으로 생성할 수 있습니다.

  <xs:simpleType name="ProtocolEnum">
    <xs:restriction base="xs:short">
      <xs:enumeration value="80">
        <xs:annotation>
          <xs:documentation>HTTP</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="8080">
        <xs:annotation>
          <xs:documentation>HTTPS</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

[연관 글]






[최초 등록일: ]
[최종 수정일: 6/30/2006]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




1  [2] 
NoWriterDateCnt.TitleFile(s)
5정성태12/24/20043498성태의 게시판 구현이론: SysnetBoard
9이일렬1/6/20042754    답변글 [답변]: 성태의 게시판 구현이론: SysnetBoard
10정성태1/17/20041516        답변글 [답변]: 성태의 게시판 구현이론: SysnetBoard
14정성태12/24/20041610    답변글 [답변]: SQL Server 2005 에서 달라지는 쿼리
16정성태5/17/20051392    답변글 Improving Application Performance by Implementing Paginated Lists
4정성태7/23/20032211리스트 ActiveX 컨트롤 ( XML 데이터 기반 )
3정성태7/23/20032539트리 ActiveX 컨트롤 ( XML 데이터 기반 ) [2]
2정성태7/23/20033334문자열 암호화 (RSA, MD5, 대칭) COM 개체
13이강구4/28/20042222    답변글 [질문]: 문자열 암호화 ( RSA, MD5, 대칭 ) COM 개체
15정성태3/4/20051745        답변글 [답변]: [질문]: 문자열 암호화 ( RSA, MD5, 대칭 ) COM 개체
1정성태7/23/20032358멋있는 바탕화면 설치 프로그램파일 다운로드1
1  [2]