-- XSD schema extracted from ITU-T Z.166 (03/2011)
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://uri.etsi.org/ttcn3/tci/Types_v4_2_1.xsd"
xmlns:Types="http://uri.etsi.org/ttcn3/tci/Types_v4_2_1.xsd"
xmlns:SimpleTypes="http://uri.etsi.org/ttcn3/tci/SimpleTypes_v4_2_1.xsd"
xmlns:Values="http://uri.etsi.org/ttcn3/tci/Values_v4_2_1.xsd"
xmlns:Templates="http://uri.etsi.org/ttcn3/tci/Templates_v4_2_1.xsd"
elementFormDefault="qualified">
<xsd:import namespace="http://uri.etsi.org/ttcn3/tci/Values_v4_2_1.xsd"
schemaLocation="Values_v4_2_1.xsd"/>
<xsd:import namespace="http://uri.etsi.org/ttcn3/tci/SimpleTypes_v4_2_1.xsd"
schemaLocation="SimpleTypes_v4_2_1.xsd"/>
<xsd:import namespace="http://uri.etsi.org/ttcn3/tci/Templates_v4_2_1.xsd"
schemaLocation="Templates_v4_2_1.xsd"/>
<!-- Connection -->
<xsd:complexType name="TriPortIdType">
<xsd:sequence>
<xsd:element name="comp" type="Types:TriComponentIdType" />
<xsd:element name="port" type="Types:Port" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TriPortIdListType">
<xsd:sequence>
<xsd:element name="comp" type="Types:TriPortIdType" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="Port">
<xsd:sequence>
<xsd:element name="id" type="Types:Id" />
<xsd:element name="index" type="xsd:int" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TriComponentIdType">
<xsd:sequence>
<xsd:choice>
<xsd:element name="null" type="Templates:null"/>
<xsd:element name="id" type="Types:Id" />
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TriComponentIdListType">
<xsd:sequence>
<xsd:element name="comp" type="Types:TriComponentIdType" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<!-- Communication -->
<xsd:complexType name="TriMessageType">
<xsd:attribute name="val" type="xsd:hexBinary"/>
</xsd:complexType>
<xsd:complexType name="TriParameterType">
<xsd:sequence>
<xsd:element name="val" type="xsd:hexBinary" />
</xsd:sequence>
<xsd:attribute name="name" type="SimpleTypes:TString"/>
<xsd:attribute name="mode" type="SimpleTypes:TciParameterPassingModeType"/>
</xsd:complexType>
<xsd:complexType name="TriParameterListType">
<xsd:sequence>
<xsd:element name="par" type="Types:TriParameterType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TriExceptionType">
<xsd:attribute name="val" type="xsd:hexBinary"/>
</xsd:complexType>
<xsd:complexType name="TciValueList">
<xsd:complexContent>
<xsd:extension base="Values:RecordValue"/>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="TriSignatureIdType">
<xsd:attribute name="val" type="SimpleTypes:TString" use="required"/>
</xsd:complexType>
<xsd:complexType name="TriAddressType">
<xsd:attribute name="val" type="xsd:hexBinary"/>
</xsd:complexType>
<xsd:complexType name="TriAddressListType">
<xsd:sequence>
<xsd:element name="addr" type="Types:TriAddressType" minOccurs="0"
maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<!-- Miscellaneous -->
<xsd:complexType name="TriTimerIdType">
<xsd:sequence>
<xsd:element name="id" type="Types:Id" />
</xsd:sequence>
</xsd:complexType>
<!-- Basic definitions -->
<xsd:complexType name="QualifiedName">
<xsd:attribute name="moduleName" type="SimpleTypes:TString" use="required"/>
<xsd:attribute name="baseName" type="SimpleTypes:TString" use="required"/>
</xsd:complexType>
<!--general TCI abstract data types -->
<xsd:complexType name="TciBehaviourIdType">
<xsd:sequence>
<xsd:element name="name" type="Types:QualifiedName" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TciTestCaseIdType">
<xsd:sequence>
<xsd:element name="name" type="Types:QualifiedName" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TciParameterType">
<xsd:sequence>
<xsd:element name="val" type="Values:Value" />
</xsd:sequence>
<xsd:attribute name="name" type="SimpleTypes:TString"/>
<xsd:attribute name="mode" type="SimpleTypes:TciParameterPassingModeType"/>
</xsd:complexType>
<xsd:complexType name="TciParameterListType">
<xsd:sequence>
<xsd:element name="par" type="Types:TciParameterType" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<!-- general identifier structure for test components, ports and timer -->
<xsd:complexType name="Id">
<xsd:sequence>
<xsd:element name="name" type="SimpleTypes:TString" />
<xsd:element name="id" type="SimpleTypes:TString" minOccurs="0"/>
<xsd:element name="type" type="SimpleTypes:TString" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>