-- XSD schema extracted from ITU-T H.761 (06/2011)
<!--
XML Schema for the NCL Language
This is NCL
Copyright: 2000-2005 LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/profiles/CausalConnector.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:causalConnectorFunctionality="http://www.ncl.org.br/NCL3.0/CausalConnectorFunctionality"
xmlns:connectorBase="http://www.ncl.org.br/NCL3.0/ConnectorBase"
xmlns:structure="http://www.ncl.org.br/NCL3.0/Structure"
xmlns:import="http://www.ncl.org.br/NCL3.0/Import"
xmlns:profile="http://www.ncl.org.br/NCL3.0/CausalConnectorProfile"
targetNamespace="http://www.ncl.org.br/NCL3.0/CausalConnectorProfile"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<!-- import the definitions in the modules namespaces -->
<import namespace="http://www.ncl.org.br/NCL3.0/CausalConnectorFunctionality"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30CausalConnectorFunctionality.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ConnectorBase"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorBase.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Structure"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Structure.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Import"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Import.xsd"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Structure -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends ncl element -->
<complexType name="nclType">
<complexContent>
<restriction base="structure:nclPrototype">
<sequence>
<element ref="structure:head" minOccurs="0" maxOccurs="1"/>
<element ref="structure:body" minOccurs="0" maxOccurs="0"/>
</sequence>
</restriction>
</complexContent>
</complexType>
<element name="ncl" type="profile:nclType" substitutionGroup="structure:ncl"/>
<!-- extends head element -->
<complexType name="headType">
<complexContent>
<extension base="structure:headPrototype">
<all>
<element ref="profile:connectorBase" />
</all>
</extension>
</complexContent>
</complexType>
<element name="head" type="profile:headType" substitutionGroup="structure:head"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- XConnector -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends connectorBase element -->
<complexType name="connectorBaseType">
<complexContent>
<extension base="connectorBase:connectorBasePrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:causalConnector" />
</choice>
</extension>
</complexContent>
</complexType>
<element name="connectorBase" type="profile:connectorBaseType" substitutionGroup="connectorBase:connectorBase"/>
<element name="causalConnector" substitutionGroup="causalConnectorFunctionality:causalConnector"/>
<element name="connectorParam" substitutionGroup="causalConnectorFunctionality:connectorParam"/>
<element name="simpleCondition" substitutionGroup="causalConnectorFunctionality:simpleCondition"/>
<element name="compoundCondition" substitutionGroup="causalConnectorFunctionality:compoundCondition"/>
<element name="simpleAction" substitutionGroup="causalConnectorFunctionality:simpleAction"/>
<element name="compoundAction" substitutionGroup="causalConnectorFunctionality:compoundAction"/>
<element name="assessmentStatement" substitutionGroup="causalConnectorFunctionality:assessmentStatement"/>
<element name="attributeAssessment" substitutionGroup="causalConnectorFunctionality:attributeAssessment"/>
<element name="valueAssessment" substitutionGroup="causalConnectorFunctionality:valueAssessment"/>
<element name="compoundStatement" substitutionGroup="causalConnectorFunctionality:compoundStatement"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- ImportBase -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<element name="importBase" substitutionGroup="import:importBase"/>
</schema>