<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright (c) 2007, Oracle. All rights reserved. 
    NAME
      ordcmss.xsd - XML Schema for Oracle-reserved data types. 

    
   MODIFIED   (MM/DD/YY)
   myalavar    04/10/07 - doc comments
   dguo        04/02/05 -  Created
-->

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://xmlns.oracle.com/ord/dicom/orddicom_1_0" xmlns:dt="http://xmlns.oracle.com/ord/dicom/datatype_1_0" targetNamespace="http://xmlns.oracle.com/ord/dicom/orddicom_1_0" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xs:import namespace="http://xmlns.oracle.com/ord/dicom/datatype_1_0" schemaLocation="http://xmlns.oracle.com/ord/dicom/datatype_1_0"/>
  <xs:annotation>
    <xs:documentation>
     Introduction
       This is the ORDDicom schema for Oracle-reserved data types.
    </xs:documentation>
  </xs:annotation>
  <xs:element name="ANY_ATTR" type="ANY_ATTR_T" nillable="true"/>
  <xs:complexType name="ANY_ATTR_T">
    <xs:annotation>
      <xs:documentation>
        Any attribute type (ANY_ATTR_T) maps to a single DICOM
        attribute type.  Each attribute type has a name that reflects
        the DICOM value representation of the attribute.
        Each attribute is strongly typed and its type matches its DICOM
        VR.  Certain DICOM configuration files, such as constraint 
        document, use ANY_ATTR_T.
      </xs:documentation>
    </xs:annotation>
    <xs:choice>
      <xs:element name="APPLICATION_ENTITY" type="dt:AE_ATTR_T"/>
      <xs:element name="AGE_STRING" type="dt:AS_ATTR_T"/>
      <xs:element name="ATTRIBUTE_TAG" type="dt:AT_ATTR_T"/>
      <xs:element name="CODE_STRING" type="dt:CS_ATTR_T"/>
      <xs:element name="DATE" type="dt:DA_ATTR_T"/>
      <xs:element name="DECIMAL_STRING" type="dt:DS_ATTR_T"/>
      <xs:element name="FLOAT_SINGLE" type="dt:FL_ATTR_T"/>
      <xs:element name="FLOAT_DOUBLE" type="dt:FD_ATTR_T"/>
      <xs:element name="INTEGER_STRING" type="dt:IS_ATTR_T"/>
      <xs:element name="LONG_STRING" type="dt:LO_ATTR_T"/>
      <xs:element name="LONG_TEXT" type="dt:LT_ATTR_T"/>
      <xs:element name="OTHER_BYTE" type="dt:OB_ATTR_T"/>
      <xs:element name="OTHER_FLOAT" type="dt:OF_ATTR_T"/>
      <xs:element name="OTHER_WORD" type="dt:OW_ATTR_T"/>
      <xs:element name="PERSON_NAME" type="dt:PN_ATTR_T"/>
      <xs:element name="SHORT_STRING" type="dt:SH_ATTR_T"/>
      <xs:element name="SIGNED_LONG" type="dt:SL_ATTR_T"/>
      <xs:element name="SEQUENCE" type="dt:SQ_ATTR_T"/>
      <xs:element name="SIGNED_SHORT" type="dt:SS_ATTR_T"/>
      <xs:element name="SHORT_TEXT" type="dt:ST_ATTR_T"/>
      <xs:element name="TIME" type="dt:TM_ATTR_T"/>
      <xs:element name="UNIQUE_ID" type="dt:UI_ATTR_T"/>
      <xs:element name="UNSIGNED_LONG" type="dt:UL_ATTR_T"/>
      <xs:element name="UNKNOWN" type="dt:UN_ATTR_T"/>
      <xs:element name="UNSIGNED_SHORT" type="dt:US_ATTR_T"/>
      <xs:element name="UNLIMITED_TEXT" type="dt:UT_ATTR_T"/>
      <xs:element name="EXTENDED_TYPE" type="dt:EXT_ATTR_T"/>
      <xs:element name="EXCEPTION_TYPE" type="dt:EXP_ATTR_T"/>
    </xs:choice>
  </xs:complexType>
  <xs:element name="CT_OPERAND_T">
    <xs:annotation>
      <xs:documentation>
        Database table storage type for constraint operand
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:choice>
        <xs:element name="STRING_VALUE" type="dt:MIXED_TEXT_T"/>
        <xs:element name="XML_VALUE" type="dt:ATTR_VALUE_T"/>
        <xs:element name="ATTRIBUTE_TAG" type="dt:VALUE_LOCATOR_MACRO_T"/>
      </xs:choice>
    </xs:complexType>
  </xs:element>
</xs:schema>