중첩 없이 요소 사이에 관계 지정
요소가 중첩되지 않은 경우에는 암시적 관계가 만들어지지 않습니다. 그러나 msdata:Relationship 주석을 사용하여 중첩되지 않은 요소 간의 관계를 명시적으로 지정할 수 있습니다.
다음 예제에서는 중첩되지 않은 Order 요소와 OrderDetail 요소 간에 msdata:Relationship 주석이 지정된 XML 스키마를 보여 줍니다. msdata:Relationship 주석은 Schema 요소의 자식 요소로 지정됩니다.
<xs:schema id="MyDataSet" xmlns=""
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xs:element name="MyDataSet" msdata:IsDataSet="true">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element name="OrderDetail">
<xs:complexType>
<xs:sequence>
<xs:element name="OrderNo" type="xs:string" />
<xs:element name="ItemNo" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Order">
<xs:complexType>
<xs:sequence>
<xs:element name="OrderNumber" type="xs:string" />
<xs:element name="EmpNumber" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:annotation>
<xs:appinfo>
<msdata:Relationship name="OrdOrderDetailRelation"
msdata:parent="Order"
msdata:child="OrderDetail"
msdata:parentkey="OrderNumber"
msdata:childkey="OrderNo"/>
</xs:appinfo>
</xs:annotation>
</xs:schema>
XSD(XML 스키마 정의 언어) 스키마 매핑 프로세스에서는 다음과 같이 Order 및 OrderDetail 테이블과 이러한 두 테이블 간에 지정된 관계로 DataSet를 만듭니다.
RelationName: OrdOrderDetailRelation
ParentTable: Order
ParentColumns: OrderNumber
ChildTable: OrderDetail
ChildColumns: OrderNo
Nested: False