<?xml version="1.0" encoding="UTF-8"?>
<!--
// Description : design.xsd
// Author : SPIRIT Schema Working Group
// Version:     $Revision: 123 $
// Date:        $Date: 2005-05-03 07:48:36 -0500 (Tue, 03 May 2005) $
// Tag:         $Name$
//
// Copyright (c) 2005 SPIRIT.  All rights reserved.
// www.spiritconsortium.com
//
// THIS WORK FORMS PART OF A SPIRIT CONSORTIUM SPECIFICATION.
// THIS WORK CONTAINS TRADE SECRETS AND PROPRIETARY INFORMATION
// WHICH IS THE EXCLUSIVE PROPERTY OF INDIVIDUAL MEMBERS OF THE
// SPIRIT CONSORTIUM. USE OF THESE MATERIALS ARE GOVERNED BY
// THE LEGAL TERMS AND CONDITIONS OUTLINED IN THE SPIRIT
// SPECIFICATION DISCLAIMER AVAILABLE FROM
// www.spiritconsortium.org
-->
<xs:schema targetNamespace="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.1" xmlns:spirit="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="qualified">
	<xs:include schemaLocation="subInstances.xsd"/>
	<xs:include schemaLocation="model.xsd"/>
	<xs:element name="design">
		<xs:annotation>
			<xs:documentation>Root element for a platform design.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:group ref="spirit:identifier"/>
				<xs:element ref="spirit:componentInstances" minOccurs="0"/>
				<xs:element ref="spirit:interconnections" minOccurs="0"/>
				<xs:element ref="spirit:adHocConnections" minOccurs="0"/>
				<xs:element ref="spirit:vendorExtensions" minOccurs="0"/>
			</xs:sequence>
		</xs:complexType>
		<xs:key name="designComponentInstanceKey">
			<xs:selector xpath="spirit:componentInstances/spirit:componentInstance"/>
			<xs:field xpath="spirit:instanceName"/>
		</xs:key>
		<xs:keyref name="designComponentInstance2Ref" refer="spirit:designComponentInstanceKey">
			<xs:selector xpath="spirit:interconnections/spirit:interconnection"/>
			<xs:field xpath="@spirit:component2Ref"/>
		</xs:keyref>
		<xs:keyref name="designComponentInstance1Ref" refer="spirit:designComponentInstanceKey">
			<xs:selector xpath="spirit:interconnections/spirit:interconnection"/>
			<xs:field xpath="@spirit:component1Ref"/>
		</xs:keyref>
	</xs:element>
</xs:schema>
