NCL 3.0 Schemas
An informative tar archive of all the NCL 3.0 Schemas is also available.
XML Schema for the NCL 3.0 Language:
NCL 3.0 Causal Connector Profile
<!--
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
Fullname: NCL 3.0 Causal Connector Profile
-->
<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>
NCL 3.0 Basic Language Profile
<!--
XML Schema for the NCL Language
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/profiles/NCL30BDTV.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Fullname: NCL 3.0 Basic Language Profile
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:compositeInterface="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
xmlns:causalConnectorFunctionality="http://www.ncl.org.br/NCL3.0/CausalConnectorFunctionality"
xmlns:connectorBase="http://www.ncl.org.br/NCL3.0/ConnectorBase"
xmlns:contentControl="http://www.ncl.org.br/NCL3.0/ContentControl"
xmlns:context="http://www.ncl.org.br/NCL3.0/Context"
xmlns:descriptor="http://www.ncl.org.br/NCL3.0/Descriptor"
xmlns:entityReuse="http://www.ncl.org.br/NCL3.0/EntityReuse"
xmlns:extendedEntityReuse="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
xmlns:descriptorControl="http://www.ncl.org.br/NCL3.0/DescriptorControl"
xmlns:import="http://www.ncl.org.br/NCL3.0/Import"
xmlns:keyNavigation="http://www.ncl.org.br/NCL3.0/KeyNavigation"
xmlns:layout="http://www.ncl.org.br/NCL3.0/Layout"
xmlns:linking="http://www.ncl.org.br/NCL3.0/Linking"
xmlns:media="http://www.ncl.org.br/NCL3.0/Media"
xmlns:mediaAnchor="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
xmlns:propertyAnchor="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
xmlns:structure="http://www.ncl.org.br/NCL3.0/Structure"
xmlns:switchInterface="http://www.ncl.org.br/NCL3.0/SwitchInterface"
xmlns:testRule="http://www.ncl.org.br/NCL3.0/TestRule"
xmlns:testRuleUse="http://www.ncl.org.br/NCL3.0/TestRuleUse"
xmlns:timing="http://www.ncl.org.br/NCL3.0/Timing"
xmlns:profile="http://www.ncl.org.br/NCL3.0/BDTVProfile"
targetNamespace="http://www.ncl.org.br/NCL3.0/BDTVProfile"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- import the definitions in the modules namespaces -->
<import namespace="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30CompositeNodeInterface.xsd"/>
<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/ContentControl"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ContentControl.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Context"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Context.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Descriptor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Descriptor.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/DescriptorControl"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30DescriptorControl.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/EntityReuse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30EntityReuse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ExtendedEntityReuse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Import"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Import.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/KeyNavigation"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30KeyNavigation.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Layout"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Layout.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Linking"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Linking.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Media"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Media.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30MediaContentAnchor.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30PropertyAnchor.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/SwitchInterface"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30SwitchInterface.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TestRule"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TestRule.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TestRuleUse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TestRuleUse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Timing"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Timing.xsd"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Structure -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends ncl element -->
<element name="ncl" substitutionGroup="structure:ncl"/>
<!-- extends head element -->
<complexType name="headType">
<complexContent>
<extension base="structure:headPrototype">
<sequence>
<element ref="profile:importedDocumentBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:ruleBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:regionBase" minOccurs="0" maxOccurs="unbounded"/>
<element ref="profile:descriptorBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:connectorBase" minOccurs="0" maxOccurs="1"/>
</sequence>
</extension>
</complexContent>
</complexType>
<element name="head" type="profile:headType" substitutionGroup="structure:head"/>
<!-- extends body element -->
<complexType name="bodyType">
<complexContent>
<extension base="structure:bodyPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:contextInterfaceElementGroup"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
<element ref="profile:switch"/>
<element ref="profile:link"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="body" type="profile:bodyType" substitutionGroup="structure:body"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Layout -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends regionBase element -->
<complexType name="regionBaseType">
<complexContent>
<extension base="layout:regionBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:region"/>
<element ref="profile:importBase"/>
</choice>
</extension>
</complexContent>
</complexType>
<complexType name="regionType">
<complexContent>
<extension base="layout:regionPrototype">
</extension>
</complexContent>
</complexType>
<element name="regionBase" type="profile:regionBaseType" substitutionGroup="layout:regionBase"/>
<element name="region" type="profile:regionType" substitutionGroup="layout:region"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Media -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends Media elements -->
<!-- media interface element groups -->
<group name="mediaInterfaceElementGroup">
<choice>
<element ref="profile:area"/>
<element ref="profile:property"/>
</choice>
</group>
<complexType name="mediaType">
<complexContent>
<extension base="media:mediaPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:mediaInterfaceElementGroup"/>
</choice>
<attributeGroup ref="descriptor:descriptorAttrs"/>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
<attributeGroup ref="extendedEntityReuse:extendedEntityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="media" type="profile:mediaType" substitutionGroup="media:media"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Context -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends context element -->
<!-- composite node interface element groups -->
<group name="contextInterfaceElementGroup">
<choice>
<element ref="profile:port"/>
<element ref="profile:property"/>
</choice>
</group>
<complexType name="contextType">
<complexContent>
<extension base="context:contextPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:contextInterfaceElementGroup"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
<element ref="profile:link"/>
<element ref="profile:switch"/>
</choice>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="context" type="profile:contextType" substitutionGroup="context:context"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- MediaContentAnchor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends area element -->
<complexType name="componentAnchorType">
<complexContent>
<extension base="mediaAnchor:componentAnchorPrototype">
</extension>
</complexContent>
</complexType>
<element name="area" type="profile:componentAnchorType" substitutionGroup="mediaAnchor:area"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- CompositeNodeInterface -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends port element -->
<complexType name="compositeNodePortType">
<complexContent>
<extension base="compositeInterface:compositeNodePortPrototype">
</extension>
</complexContent>
</complexType>
<element name="port" type="profile:compositeNodePortType" substitutionGroup="compositeInterface:port"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- PropertyAnchor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends property element -->
<complexType name="propertyAnchorType">
<complexContent>
<extension base="propertyAnchor:propertyAnchorPrototype">
</extension>
</complexContent>
</complexType>
<element name="property" type="profile:propertyAnchorType" substitutionGroup="propertyAnchor:property"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- SwitchInterface -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends switchPort element -->
<complexType name="switchPortType">
<complexContent>
<extension base="switchInterface:switchPortPrototype">
</extension>
</complexContent>
</complexType>
<element name="mapping" substitutionGroup="switchInterface:mapping"/>
<element name="switchPort" type="profile:switchPortType" substitutionGroup="switchInterface:switchPort"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Descriptor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- substitutes descriptorParam element -->
<element name="descriptorParam" substitutionGroup="descriptor:descriptorParam"/>
<!-- extends descriptor element -->
<complexType name="descriptorType">
<complexContent>
<extension base="descriptor:descriptorPrototype">
<attributeGroup ref="layout:regionAttrs"/>
<attributeGroup ref="timing:explicitDurAttrs"/>
<attributeGroup ref="timing:freezeAttrs"/>
<attributeGroup ref="keyNavigation:keyNavigationAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="descriptor" type="profile:descriptorType" substitutionGroup="descriptor:descriptor"/>
<!-- extends descriptorBase element -->
<complexType name="descriptorBaseType">
<complexContent>
<extension base="descriptor:descriptorBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:descriptor"/>
<element ref="profile:descriptorSwitch"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="descriptorBase" type="profile:descriptorBaseType" substitutionGroup="descriptor:descriptorBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Linking -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- substitutes linkParam and bindParam elements -->
<element name="linkParam" substitutionGroup="linking:linkParam"/>
<element name="bindParam" substitutionGroup="linking:bindParam"/>
<!-- extends bind element and link element, as a consequence-->
<complexType name="bindType">
<complexContent>
<extension base="linking:bindPrototype">
<attributeGroup ref="descriptor:descriptorAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="bind" type="profile:bindType" substitutionGroup="linking:bind"/>
<!-- extends link element -->
<complexType name="linkType">
<complexContent>
<extension base="linking:linkPrototype">
</extension>
</complexContent>
</complexType>
<element name="link" type="profile:linkType" substitutionGroup="linking:link"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Connector -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- 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"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TestRule -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends rule element -->
<complexType name="ruleType">
<complexContent>
<extension base="testRule:rulePrototype">
</extension>
</complexContent>
</complexType>
<element name="rule" type="profile:ruleType" substitutionGroup="testRule:rule"/>
<!-- extends compositeRule element -->
<complexType name="compositeRuleType">
<complexContent>
<extension base="testRule:compositeRulePrototype">
</extension>
</complexContent>
</complexType>
<element name="compositeRule" type="profile:compositeRuleType" substitutionGroup="testRule:compositeRule"/>
<!-- extends ruleBase element -->
<complexType name="ruleBaseType">
<complexContent>
<extension base="testRule:ruleBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:rule"/>
<element ref="profile:compositeRule"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="ruleBase" type="profile:ruleBaseType" substitutionGroup="testRule:ruleBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TestRuleUse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends bindRule element -->
<complexType name="bindRuleType">
<complexContent>
<extension base="testRuleUse:bindRulePrototype">
</extension>
</complexContent>
</complexType>
<element name="bindRule" type="profile:bindRuleType" substitutionGroup="testRuleUse:bindRule"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- ContentControl -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends switch element -->
<!-- switch interface element groups -->
<group name="switchInterfaceElementGroup">
<choice>
<element ref="profile:switchPort"/>
</choice>
</group>
<!-- extends defaultComponent element -->
<complexType name="defaultComponentType">
<complexContent>
<extension base="contentControl:defaultComponentPrototype">
</extension>
</complexContent>
</complexType>
<element name="defaultComponent" type="profile:defaultComponentType" substitutionGroup="contentControl:defaultComponent"/>
<complexType name="switchType">
<complexContent>
<extension base="contentControl:switchPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:switchInterfaceElementGroup"/>
<element ref="profile:bindRule"/>
<element ref="profile:switch"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
</choice>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="switch" type="profile:switchType" substitutionGroup="contentControl:switch"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- DescriptorControl -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends defaultDescriptor element -->
<complexType name="defaultDescriptorType">
<complexContent>
<extension base="descriptorControl:defaultDescriptorPrototype">
</extension>
</complexContent>
</complexType>
<element name="defaultDescriptor" type="profile:defaultDescriptorType" substitutionGroup="descriptorControl:defaultDescriptor"/>
<!-- extends descriptorSwitch element -->
<complexType name="descriptorSwitchType">
<complexContent>
<extension base="descriptorControl:descriptorSwitchPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="profile:descriptor"/>
<element ref="profile:bindRule"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="descriptorSwitch" type="profile:descriptorSwitchType" substitutionGroup="descriptorControl:descriptorSwitch"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Timing -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Import -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<complexType name="importBaseType">
<complexContent>
<extension base="import:importBasePrototype">
</extension>
</complexContent>
</complexType>
<complexType name="importNCLType">
<complexContent>
<extension base="import:importNCLPrototype">
</extension>
</complexContent>
</complexType>
<complexType name="importedDocumentBaseType">
<complexContent>
<extension base="import:importedDocumentBasePrototype">
</extension>
</complexContent>
</complexType>
<element name="importBase" type="profile:importBaseType" substitutionGroup="import:importBase"/>
<element name="importNCL" type="profile:importNCLType" substitutionGroup="import:importNCL"/>
<element name="importedDocumentBase" type="profile:importedDocumentBaseType" substitutionGroup="import:importedDocumentBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- EntityReuse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- ExtendedEntityReuse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- KeyNavigation -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
</schema>
NCL 3.0 Enhanced Language Profile
<!--
XML Schema for the NCL Language
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/profiles/NCL30EDTV.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Fullname: NCL 3.0 Enhanced Language Profile
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:animation="http://www.ncl.org.br/NCL3.0/Animation"
xmlns:compositeInterface="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
xmlns:causalConnectorFunctionality="http://www.ncl.org.br/NCL3.0/CausalConnectorFunctionality"
xmlns:connectorBase="http://www.ncl.org.br/NCL3.0/ConnectorBase"
xmlns:connectorCausalExpression="http://www.ncl.org.br/NCL3.0/ConnectorCausalExpression"
xmlns:contentControl="http://www.ncl.org.br/NCL3.0/ContentControl"
xmlns:context="http://www.ncl.org.br/NCL3.0/Context"
xmlns:descriptor="http://www.ncl.org.br/NCL3.0/Descriptor"
xmlns:entityReuse="http://www.ncl.org.br/NCL3.0/EntityReuse"
xmlns:extendedEntityReuse="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
xmlns:descriptorControl="http://www.ncl.org.br/NCL3.0/DescriptorControl"
xmlns:import="http://www.ncl.org.br/NCL3.0/Import"
xmlns:keyNavigation="http://www.ncl.org.br/NCL3.0/KeyNavigation"
xmlns:layout="http://www.ncl.org.br/NCL3.0/Layout"
xmlns:linking="http://www.ncl.org.br/NCL3.0/Linking"
xmlns:media="http://www.ncl.org.br/NCL3.0/Media"
xmlns:mediaAnchor="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
xmlns:propertyAnchor="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
xmlns:structure="http://www.ncl.org.br/NCL3.0/Structure"
xmlns:switchInterface="http://www.ncl.org.br/NCL3.0/SwitchInterface"
xmlns:testRule="http://www.ncl.org.br/NCL3.0/TestRule"
xmlns:testRuleUse="http://www.ncl.org.br/NCL3.0/TestRuleUse"
xmlns:timing="http://www.ncl.org.br/NCL3.0/Timing"
xmlns:transitionBase="http://www.ncl.org.br/NCL3.0/TransitionBase"
xmlns:metainformation="http://www.ncl.org.br/NCL3.0/Metainformation"
xmlns:transition="http://www.ncl.org.br/NCL3.0/Transition"
xmlns:profile="http://www.ncl.org.br/NCL3.0/EDTVProfile"
targetNamespace="http://www.ncl.org.br/NCL3.0/EDTVProfile"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- import the definitions in the modules namespaces -->
<import namespace="http://www.ncl.org.br/NCL3.0/Animation"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Animation.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30CompositeNodeInterface.xsd"/>
<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/ConnectorCausalExpression"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCausalExpression.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ContentControl"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ContentControl.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Context"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Context.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Descriptor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Descriptor.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/DescriptorControl"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30DescriptorControl.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/EntityReuse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30EntityReuse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ExtendedEntityReuse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Import"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Import.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/KeyNavigation"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30KeyNavigation.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Layout"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Layout.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Linking"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Linking.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Media"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Media.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30MediaContentAnchor.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30PropertyAnchor.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/SwitchInterface"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30SwitchInterface.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TestRule"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TestRule.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TestRuleUse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TestRuleUse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Timing"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Timing.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TransitionBase"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TransitionBase.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Metainformation"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Metainformation.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Transition"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Transition.xsd"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Structure -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends ncl element -->
<element name="ncl" substitutionGroup="structure:ncl"/>
<!-- extends head element -->
<complexType name="headType">
<complexContent>
<extension base="structure:headPrototype">
<sequence>
<element ref="profile:importedDocumentBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:ruleBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:transitionBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:regionBase" minOccurs="0" maxOccurs="unbounded"/>
<element ref="profile:descriptorBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:connectorBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:meta" minOccurs="0" maxOccurs="unbounded"/>
<element ref="profile:metadata" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<element name="head" type="profile:headType" substitutionGroup="structure:head"/>
<!-- extends body element -->
<complexType name="bodyType">
<complexContent>
<extension base="structure:bodyPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:contextInterfaceElementGroup"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
<element ref="profile:switch"/>
<element ref="profile:link"/>
<element ref="profile:meta"/>
<element ref="profile:metadata"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="body" type="profile:bodyType" substitutionGroup="structure:body"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Layout -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends regionBase element -->
<complexType name="regionBaseType">
<complexContent>
<extension base="layout:regionBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:region"/>
</choice>
</extension>
</complexContent>
</complexType>
<complexType name="regionType">
<complexContent>
<extension base="layout:regionPrototype">
</extension>
</complexContent>
</complexType>
<element name="regionBase" type="profile:regionBaseType" substitutionGroup="layout:regionBase"/>
<element name="region" type="profile:regionType" substitutionGroup="layout:region"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Media -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends Media elements -->
<!-- media interface element groups -->
<group name="mediaInterfaceElementGroup">
<choice>
<element ref="profile:area"/>
<element ref="profile:property"/>
</choice>
</group>
<complexType name="mediaType">
<complexContent>
<extension base="media:mediaPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:mediaInterfaceElementGroup"/>
</choice>
<attributeGroup ref="descriptor:descriptorAttrs"/>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
<attributeGroup ref="extendedEntityReuse:extendedEntityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="media" type="profile:mediaType" substitutionGroup="media:media"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Context -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends context element -->
<!-- composite node interface element groups -->
<group name="contextInterfaceElementGroup">
<choice>
<element ref="profile:port"/>
<element ref="profile:property"/>
</choice>
</group>
<complexType name="contextType">
<complexContent>
<extension base="context:contextPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:contextInterfaceElementGroup"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
<element ref="profile:link"/>
<element ref="profile:switch"/>
<element ref="profile:meta"/>
<element ref="profile:metadata"/>
</choice>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="context" type="profile:contextType" substitutionGroup="context:context"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- MediaContentAnchor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends area element -->
<complexType name="componentAnchorType">
<complexContent>
<extension base="mediaAnchor:componentAnchorPrototype">
</extension>
</complexContent>
</complexType>
<element name="area" type="profile:componentAnchorType" substitutionGroup="mediaAnchor:area"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- CompositeNodeInterface -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends port element -->
<complexType name="compositeNodePortType">
<complexContent>
<extension base="compositeInterface:compositeNodePortPrototype">
</extension>
</complexContent>
</complexType>
<element name="port" type="profile:compositeNodePortType" substitutionGroup="compositeInterface:port"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- PropertyAnchor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends property element -->
<complexType name="propertyAnchorType">
<complexContent>
<extension base="propertyAnchor:propertyAnchorPrototype">
</extension>
</complexContent>
</complexType>
<element name="property" type="profile:propertyAnchorType" substitutionGroup="propertyAnchor:property"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- SwitchInterface -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends switchPort element -->
<complexType name="switchPortType">
<complexContent>
<extension base="switchInterface:switchPortPrototype">
</extension>
</complexContent>
</complexType>
<element name="mapping" substitutionGroup="switchInterface:mapping"/>
<element name="switchPort" type="profile:switchPortType" substitutionGroup="switchInterface:switchPort"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Descriptor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- substitutes descriptorParam element -->
<element name="descriptorParam" substitutionGroup="descriptor:descriptorParam"/>
<!-- extends descriptor element -->
<complexType name="descriptorType">
<complexContent>
<extension base="descriptor:descriptorPrototype">
<attributeGroup ref="layout:regionAttrs"/>
<attributeGroup ref="timing:explicitDurAttrs"/>
<attributeGroup ref="timing:freezeAttrs"/>
<attributeGroup ref="keyNavigation:keyNavigationAttrs"/>
<attributeGroup ref="transition:transAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="descriptor" type="profile:descriptorType" substitutionGroup="descriptor:descriptor"/>
<!-- extends descriptorBase element -->
<complexType name="descriptorBaseType">
<complexContent>
<extension base="descriptor:descriptorBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:descriptor"/>
<element ref="profile:descriptorSwitch"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="descriptorBase" type="profile:descriptorBaseType" substitutionGroup="descriptor:descriptorBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Linking -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- substitutes linkParam and bindParam elements -->
<element name="linkParam" substitutionGroup="linking:linkParam"/>
<element name="bindParam" substitutionGroup="linking:bindParam"/>
<!-- extends bind element and link element, as a consequence-->
<complexType name="bindType">
<complexContent>
<extension base="linking:bindPrototype">
<attributeGroup ref="descriptor:descriptorAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="bind" type="profile:bindType" substitutionGroup="linking:bind"/>
<!-- extends link element -->
<complexType name="linkType">
<complexContent>
<extension base="linking:linkPrototype">
</extension>
</complexContent>
</complexType>
<element name="link" type="profile:linkType" substitutionGroup="linking:link"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Connector -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- 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>
<complexType name="simpleActionType">
<complexContent>
<extension base="connectorCausalExpression:simpleActionPrototype">
<attributeGroup ref="animation:animationAttrs"/>
</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" type="profile:simpleActionType" 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"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TestRule -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends rule element -->
<complexType name="ruleType">
<complexContent>
<extension base="testRule:rulePrototype">
</extension>
</complexContent>
</complexType>
<element name="rule" type="profile:ruleType" substitutionGroup="testRule:rule"/>
<!-- extends compositeRule element -->
<complexType name="compositeRuleType">
<complexContent>
<extension base="testRule:compositeRulePrototype">
</extension>
</complexContent>
</complexType>
<element name="compositeRule" type="profile:compositeRuleType" substitutionGroup="testRule:compositeRule"/>
<!-- extends ruleBase element -->
<complexType name="ruleBaseType">
<complexContent>
<extension base="testRule:ruleBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:rule"/>
<element ref="profile:compositeRule"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="ruleBase" type="profile:ruleBaseType" substitutionGroup="testRule:ruleBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TestRuleUse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends bindRule element -->
<complexType name="bindRuleType">
<complexContent>
<extension base="testRuleUse:bindRulePrototype">
</extension>
</complexContent>
</complexType>
<element name="bindRule" type="profile:bindRuleType" substitutionGroup="testRuleUse:bindRule"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- ContentControl -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends switch element -->
<!-- switch interface element groups -->
<group name="switchInterfaceElementGroup">
<choice>
<element ref="profile:switchPort"/>
</choice>
</group>
<!-- extends defaultComponent element -->
<complexType name="defaultComponentType">
<complexContent>
<extension base="contentControl:defaultComponentPrototype">
</extension>
</complexContent>
</complexType>
<element name="defaultComponent" type="profile:defaultComponentType" substitutionGroup="contentControl:defaultComponent"/>
<complexType name="switchType">
<complexContent>
<extension base="contentControl:switchPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:switchInterfaceElementGroup"/>
<element ref="profile:bindRule"/>
<element ref="profile:switch"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
</choice>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="switch" type="profile:switchType" substitutionGroup="contentControl:switch"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- DescriptorControl -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends defaultDescriptor element -->
<complexType name="defaultDescriptorType">
<complexContent>
<extension base="descriptorControl:defaultDescriptorPrototype">
</extension>
</complexContent>
</complexType>
<element name="defaultDescriptor" type="profile:defaultDescriptorType" substitutionGroup="descriptorControl:defaultDescriptor"/>
<!-- extends descriptorSwitch element -->
<complexType name="descriptorSwitchType">
<complexContent>
<extension base="descriptorControl:descriptorSwitchPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="profile:descriptor"/>
<element ref="profile:bindRule"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="descriptorSwitch" type="profile:descriptorSwitchType" substitutionGroup="descriptorControl:descriptorSwitch"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Timing -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Import -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<complexType name="importBaseType">
<complexContent>
<extension base="import:importBasePrototype">
</extension>
</complexContent>
</complexType>
<complexType name="importNCLType">
<complexContent>
<extension base="import:importNCLPrototype">
</extension>
</complexContent>
</complexType>
<complexType name="importedDocumentBaseType">
<complexContent>
<extension base="import:importedDocumentBasePrototype">
</extension>
</complexContent>
</complexType>
<element name="importBase" type="profile:importBaseType" substitutionGroup="import:importBase"/>
<element name="importNCL" type="profile:importNCLType" substitutionGroup="import:importNCL"/>
<element name="importedDocumentBase" type="profile:importedDocumentBaseType" substitutionGroup="import:importedDocumentBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- EntityReuse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- ExtendedEntityReuse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- KeyNavigation -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TransitionBase -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends transitionBase element -->
<complexType name="transitionBaseType">
<complexContent>
<extension base="transitionBase:transitionBasePrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="profile:transition"/>
<element ref="profile:importBase"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="transitionBase" type="profile:transitionBaseType" substitutionGroup="transitionBase:transitionBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Transition -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<element name="transition" substitutionGroup="transition:transition"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Metainformation -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<element name="meta" substitutionGroup="metainformation:meta"/>
<element name="metadata" substitutionGroup="metainformation:metadata"/>
</schema>
NCL 3.0 Editing Commands Profile
<!--
XML Schema for the NCL Language
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/profiles/NCL30EdCommand.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Fullname: NCL 3.0 Editing Commands Profile
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:animation="http://www.ncl.org.br/NCL3.0/Animation"
xmlns:compositeInterface="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
xmlns:causalConnectorFunctionality="http://www.ncl.org.br/NCL3.0/CausalConnectorFunctionality"
xmlns:connectorBase="http://www.ncl.org.br/NCL3.0/ConnectorBase"
xmlns:connectorCausalExpression="http://www.ncl.org.br/NCL3.0/ConnectorCausalExpression"
xmlns:contentControl="http://www.ncl.org.br/NCL3.0/ContentControl"
xmlns:context="http://www.ncl.org.br/NCL3.0/Context"
xmlns:descriptor="http://www.ncl.org.br/NCL3.0/Descriptor"
xmlns:entityReuse="http://www.ncl.org.br/NCL3.0/EntityReuse"
xmlns:extendedEntityReuse="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
xmlns:descriptorControl="http://www.ncl.org.br/NCL3.0/DescriptorControl"
xmlns:import="http://www.ncl.org.br/NCL3.0/Import"
xmlns:keyNavigation="http://www.ncl.org.br/NCL3.0/KeyNavigation"
xmlns:layout="http://www.ncl.org.br/NCL3.0/Layout"
xmlns:linking="http://www.ncl.org.br/NCL3.0/Linking"
xmlns:media="http://www.ncl.org.br/NCL3.0/Media"
xmlns:mediaAnchor="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
xmlns:propertyAnchor="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
xmlns:structure="http://www.ncl.org.br/NCL3.0/Structure"
xmlns:switchInterface="http://www.ncl.org.br/NCL3.0/SwitchInterface"
xmlns:testRule="http://www.ncl.org.br/NCL3.0/TestRule"
xmlns:testRuleUse="http://www.ncl.org.br/NCL3.0/TestRuleUse"
xmlns:timing="http://www.ncl.org.br/NCL3.0/Timing"
xmlns:transitionBase="http://www.ncl.org.br/NCL3.0/TransitionBase"
xmlns:metainformation="http://www.ncl.org.br/NCL3.0/Metainformation"
xmlns:transition="http://www.ncl.org.br/NCL3.0/Transition"
xmlns:profile="http://www.ncl.org.br/NCL3.0/EdCommandProfile"
targetNamespace="http://www.ncl.org.br/NCL3.0/EdCommandProfile"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- import the definitions in the modules namespaces -->
<import namespace="http://www.ncl.org.br/NCL3.0/Animation"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Animation.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30CompositeNodeInterface.xsd"/>
<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/ConnectorCausalExpression"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCausalExpression.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ContentControl"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ContentControl.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Context"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Context.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Descriptor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Descriptor.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/DescriptorControl"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30DescriptorControl.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/EntityReuse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30EntityReuse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ExtendedEntityReuse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Import"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Import.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/KeyNavigation"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30KeyNavigation.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Layout"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Layout.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Linking"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Linking.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Media"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Media.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30MediaContentAnchor.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30PropertyAnchor.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/SwitchInterface"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30SwitchInterface.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TestRule"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TestRule.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TestRuleUse"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TestRuleUse.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Timing"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Timing.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/TransitionBase"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30TransitionBase.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Metainformation"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Metainformation.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/Transition"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30Transition.xsd"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!--EditingCommand -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!--defines the command element -->
<!--This is a pseudo-element, only defined to show the elements that may be used in the root of the command parameters XML document-->
<!--
<complexType name="commandType">
<choice minOccurs="1" maxOccurs="1">
<element ref="profile:ncl"/>
<element ref="profile:region"/>
<element ref="profile:rule"/>
<element ref="profile:connector"/>
<element ref="profile:descriptor"/>
<element ref="profile:descriptorSwitch"/>
<element ref="profile:transition"/>
<element ref="profile:regionBase"/>
<element ref="profile:ruleBase"/>
<element ref="profile:connectorBase"/>
<element ref="profile:descriptorBase"/>
<element ref="profile:transitionBase"/>
<element ref="profile:importBase"/>
<element ref="profile:importedDocumentBase"/>
<element ref="profile:importNCL"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
<element ref="profile:switch"/>
<element ref="profile:port"/>
<element ref="profile:area"/>
<element ref="profile:property"/>
<element ref="profile:switchPort"/>
<element ref="profile:link"/>
</choice>
</complexType>
<element name="command" type="profile:commandType"/>
-->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Structure -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends ncl element -->
<element name="ncl" substitutionGroup="structure:ncl"/>
<!-- extends head element -->
<complexType name="headType">
<complexContent>
<extension base="structure:headPrototype">
<sequence>
<element ref="profile:importedDocumentBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:ruleBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:transitionBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:regionBase" minOccurs="0" maxOccurs="unbounded"/>
<element ref="profile:descriptorBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:connectorBase" minOccurs="0" maxOccurs="1"/>
<element ref="profile:meta" minOccurs="0" maxOccurs="unbounded"/>
<element ref="profile:metadata" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<element name="head" type="profile:headType" substitutionGroup="structure:head"/>
<!-- extends body element -->
<complexType name="bodyType">
<complexContent>
<extension base="structure:bodyPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:contextInterfaceElementGroup"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
<element ref="profile:switch"/>
<element ref="profile:link"/>
<element ref="profile:meta"/>
<element ref="profile:metadata"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="body" type="profile:bodyType" substitutionGroup="structure:body"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Layout -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends regionBase element -->
<complexType name="regionBaseType">
<complexContent>
<extension base="layout:regionBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:region"/>
<element ref="profile:importBase"/>
</choice>
</extension>
</complexContent>
</complexType>
<complexType name="regionType">
<complexContent>
<extension base="layout:regionPrototype">
</extension>
</complexContent>
</complexType>
<element name="regionBase" type="profile:regionBaseType" substitutionGroup="layout:regionBase"/>
<element name="region" type="profile:regionType" substitutionGroup="layout:region"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Media -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends Media elements -->
<!-- media interface element groups -->
<group name="mediaInterfaceElementGroup">
<choice>
<element ref="profile:area"/>
<element ref="profile:property"/>
</choice>
</group>
<complexType name="mediaType">
<complexContent>
<extension base="media:mediaPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:mediaInterfaceElementGroup"/>
</choice>
<attributeGroup ref="descriptor:descriptorAttrs"/>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
<attributeGroup ref="extendedEntityReuse:extendedEntityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="media" type="profile:mediaType" substitutionGroup="media:media"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Context -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends context element -->
<!-- composite node interface element groups -->
<group name="contextInterfaceElementGroup">
<choice>
<element ref="profile:port"/>
<element ref="profile:property"/>
</choice>
</group>
<complexType name="contextType">
<complexContent>
<extension base="context:contextPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:contextInterfaceElementGroup"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
<element ref="profile:link"/>
<element ref="profile:switch"/>
<element ref="profile:meta"/>
<element ref="profile:metadata"/>
</choice>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="context" type="profile:contextType" substitutionGroup="context:context"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- MediaContentAnchor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends area element -->
<complexType name="componentAnchorType">
<complexContent>
<extension base="mediaAnchor:componentAnchorPrototype">
<attribute name="now" type="string" use="optional"/>
</extension>
</complexContent>
</complexType>
<element name="area" type="profile:componentAnchorType" substitutionGroup="mediaAnchor:area"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- CompositeNodeInterface -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends port element -->
<complexType name="compositeNodePortType">
<complexContent>
<extension base="compositeInterface:compositeNodePortPrototype">
</extension>
</complexContent>
</complexType>
<element name="port" type="profile:compositeNodePortType" substitutionGroup="compositeInterface:port"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- PropertyAnchor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends property element -->
<complexType name="propertyAnchorType">
<complexContent>
<extension base="propertyAnchor:propertyAnchorPrototype">
</extension>
</complexContent>
</complexType>
<element name="property" type="profile:propertyAnchorType" substitutionGroup="propertyAnchor:property"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- SwitchInterface -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends switchPort element -->
<complexType name="switchPortType">
<complexContent>
<extension base="switchInterface:switchPortPrototype">
</extension>
</complexContent>
</complexType>
<element name="mapping" substitutionGroup="switchInterface:mapping"/>
<element name="switchPort" type="profile:switchPortType" substitutionGroup="switchInterface:switchPort"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Descriptor -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- substitutes descriptorParam element -->
<element name="descriptorParam" substitutionGroup="descriptor:descriptorParam"/>
<!-- extends descriptor element -->
<complexType name="descriptorType">
<complexContent>
<extension base="descriptor:descriptorPrototype">
<attributeGroup ref="layout:regionAttrs"/>
<attributeGroup ref="timing:explicitDurAttrs"/>
<attributeGroup ref="timing:freezeAttrs"/>
<attributeGroup ref="keyNavigation:keyNavigationAttrs"/>
<attributeGroup ref="transition:transAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="descriptor" type="profile:descriptorType" substitutionGroup="descriptor:descriptor"/>
<!-- extends descriptorBase element -->
<complexType name="descriptorBaseType">
<complexContent>
<extension base="descriptor:descriptorBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:descriptor"/>
<element ref="profile:descriptorSwitch"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="descriptorBase" type="profile:descriptorBaseType" substitutionGroup="descriptor:descriptorBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Linking -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- substitutes linkParam and bindParam elements -->
<element name="linkParam" substitutionGroup="linking:linkParam"/>
<element name="bindParam" substitutionGroup="linking:bindParam"/>
<!-- extends bind element and link element, as a consequence-->
<complexType name="bindType">
<complexContent>
<extension base="linking:bindPrototype">
<attributeGroup ref="descriptor:descriptorAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="bind" type="profile:bindType" substitutionGroup="linking:bind"/>
<!-- extends link element -->
<complexType name="linkType">
<complexContent>
<extension base="linking:linkPrototype">
</extension>
</complexContent>
</complexType>
<element name="link" type="profile:linkType" substitutionGroup="linking:link"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Connector -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- 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>
<complexType name="simpleActionType">
<complexContent>
<extension base="connectorCausalExpression:simpleActionPrototype">
<attributeGroup ref="animation:animationAttrs"/>
</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" type="profile:simpleActionType" 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"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TestRule -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends rule element -->
<complexType name="ruleType">
<complexContent>
<extension base="testRule:rulePrototype">
</extension>
</complexContent>
</complexType>
<element name="rule" type="profile:ruleType" substitutionGroup="testRule:rule"/>
<!-- extends compositeRule element -->
<complexType name="compositeRuleType">
<complexContent>
<extension base="testRule:compositeRulePrototype">
</extension>
</complexContent>
</complexType>
<element name="compositeRule" type="profile:compositeRuleType" substitutionGroup="testRule:compositeRule"/>
<!-- extends ruleBase element -->
<complexType name="ruleBaseType">
<complexContent>
<extension base="testRule:ruleBasePrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="profile:importBase"/>
<element ref="profile:rule"/>
<element ref="profile:compositeRule"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="ruleBase" type="profile:ruleBaseType" substitutionGroup="testRule:ruleBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TestRuleUse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends bindRule element -->
<complexType name="bindRuleType">
<complexContent>
<extension base="testRuleUse:bindRulePrototype">
</extension>
</complexContent>
</complexType>
<element name="bindRule" type="profile:bindRuleType" substitutionGroup="testRuleUse:bindRule"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- ContentControl -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends switch element -->
<!-- switch interface element groups -->
<group name="switchInterfaceElementGroup">
<choice>
<element ref="profile:switchPort"/>
</choice>
</group>
<!-- extends defaultComponent element -->
<complexType name="defaultComponentType">
<complexContent>
<extension base="contentControl:defaultComponentPrototype">
</extension>
</complexContent>
</complexType>
<element name="defaultComponent" type="profile:defaultComponentType" substitutionGroup="contentControl:defaultComponent"/>
<complexType name="switchType">
<complexContent>
<extension base="contentControl:switchPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<group ref="profile:switchInterfaceElementGroup"/>
<element ref="profile:bindRule"/>
<element ref="profile:switch"/>
<element ref="profile:media"/>
<element ref="profile:context"/>
</choice>
<attributeGroup ref="entityReuse:entityReuseAttrs"/>
</extension>
</complexContent>
</complexType>
<element name="switch" type="profile:switchType" substitutionGroup="contentControl:switch"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- DescriptorControl -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends defaultDescriptor element -->
<complexType name="defaultDescriptorType">
<complexContent>
<extension base="descriptorControl:defaultDescriptorPrototype">
</extension>
</complexContent>
</complexType>
<element name="defaultDescriptor" type="profile:defaultDescriptorType" substitutionGroup="descriptorControl:defaultDescriptor"/>
<!-- extends descriptorSwitch element -->
<complexType name="descriptorSwitchType">
<complexContent>
<extension base="descriptorControl:descriptorSwitchPrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="profile:descriptor"/>
<element ref="profile:bindRule"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="descriptorSwitch" type="profile:descriptorSwitchType" substitutionGroup="descriptorControl:descriptorSwitch"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Timing -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Import -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<complexType name="importBaseType">
<complexContent>
<extension base="import:importBasePrototype">
</extension>
</complexContent>
</complexType>
<complexType name="importNCLType">
<complexContent>
<extension base="import:importNCLPrototype">
</extension>
</complexContent>
</complexType>
<complexType name="importedDocumentBaseType">
<complexContent>
<extension base="import:importedDocumentBasePrototype">
</extension>
</complexContent>
</complexType>
<element name="importBase" type="profile:importBaseType" substitutionGroup="import:importBase"/>
<element name="importNCL" type="profile:importNCLType" substitutionGroup="import:importNCL"/>
<element name="importedDocumentBase" type="profile:importedDocumentBaseType" substitutionGroup="import:importedDocumentBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- EntityReuse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- ExtendedEntityReuse -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- KeyNavigation -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- TransitionBase -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- extends transitionBase element -->
<complexType name="transitionBaseType">
<complexContent>
<extension base="transitionBase:transitionBasePrototype">
<choice minOccurs="0" maxOccurs="unbounded">
<element ref="profile:transition"/>
<element ref="profile:importBase"/>
</choice>
</extension>
</complexContent>
</complexType>
<element name="transitionBase" type="profile:transitionBaseType" substitutionGroup="transitionBase:transitionBase"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Transition -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<element name="transition" substitutionGroup="transition:transition"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- Metainformation -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<element name="meta" substitutionGroup="metainformation:meta"/>
<element name="metadata" substitutionGroup="metainformation:metadata"/>
</schema>
XML Schema for the NCL 3.0 modules:
NCL 3.0 Animation
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Animation.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Timing module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:animation="http://www.ncl.org.br/NCL3.0/Animation"
targetNamespace="http://www.ncl.org.br/NCL3.0/Animation"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- declare global attributes in this module -->
<!-- define the animation attribute group -->
<attributeGroup name="animationAttrs">
<attribute name="duration" type="string" use="optional"/>
<attribute name="by" type="string" use="optional"/>
</attributeGroup>
</schema>
NCL 3.0 CausalConnector
<!-- XML Schema for the NCL modules This is NCL Copyright: 2000-2006 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved. See http://www.telemidia.puc-rio.br Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30CausalConnector.xsd Author: TeleMidia Laboratory Revision: 19/09/2006 Schema for the NCL Causal Connector module namespace. --> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:causalConnector="http://www.ncl.org.br/NCL3.0/CausalConnector" targetNamespace="http://www.ncl.org.br/NCL3.0/CausalConnector" elementFormDefault="qualified" attributeFormDefault="unqualified" > <complexType name="causalConnectorPrototype"> <attribute name="id" type="ID" use="required"/> </complexType> <!-- declare global elements in this module --> <element name="causalConnector" type="causalConnector:causalConnectorPrototype"/> </schema>
NCL 3.0 CausalConnectorFunctionality
<!--
XML Schema for the NCL modules
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/modules/
NCL30CausalConnectorFunctionality.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL CausalConnectorFunctionality module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:connectorCommonPart="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
xmlns:connectorAssessmentExpression="http://www.ncl.org.br/NCL3.0/ConnectorAssessmentExpression"
xmlns:connectorCausalExpression="http://www.ncl.org.br/NCL3.0/ConnectorCausalExpression"
xmlns:causalConnector="http://www.ncl.org.br/NCL3.0/CausalConnector"
xmlns:causalConnectorFunctionality="http://www.ncl.org.br/NCL3.0/CausalConnectorFunctionality"
targetNamespace="http://www.ncl.org.br/NCL3.0/CausalConnectorFunctionality"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<!-- import the definitions in the modules namespaces -->
<import namespace="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCommonPart.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ConnectorAssessmentExpression"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorAssessmentExpression.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/ConnectorCausalExpression"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCausalExpression.xsd"/>
<import namespace="http://www.ncl.org.br/NCL3.0/CausalConnector"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30CausalConnector.xsd"/>
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- CausalConnectorFunctionality -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<element name="connectorParam" type="connectorCommonPart:parameterPrototype"/>
<!-- extends causalConnector element -->
<complexType name="causalConnectorType">
<complexContent>
<extension base="causalConnector:causalConnectorPrototype">
<sequence>
<element ref="causalConnectorFunctionality:connectorParam" minOccurs="0" maxOccurs="unbounded"/>
<choice>
<element ref="causalConnectorFunctionality:simpleCondition" />
<element ref="causalConnectorFunctionality:compoundCondition" />
</choice>
<choice>
<element ref="causalConnectorFunctionality:simpleAction" />
<element ref="causalConnectorFunctionality:compoundAction" />
</choice>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- extends compoundCondition element -->
<complexType name="compoundConditionType">
<complexContent>
<extension base="connectorCausalExpression:compoundConditionPrototype">
<sequence>
<choice>
<element ref="causalConnectorFunctionality:simpleCondition" />
<element ref="causalConnectorFunctionality:compoundCondition" />
</choice>
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="causalConnectorFunctionality:simpleCondition" />
<element ref="causalConnectorFunctionality:compoundCondition" />
<element ref="causalConnectorFunctionality:assessmentStatement" />
<element ref="causalConnectorFunctionality:compoundStatement" />
</choice>
</sequence>
</extension>
</complexContent>
</complexType>
<element name="causalConnector" type="causalConnectorFunctionality:causalConnectorType" substitutionGroup="causalConnector:causalConnector"/>
<element name="simpleCondition" substitutionGroup="connectorCausalExpression:simpleCondition"/>
<element name="compoundCondition" type="causalConnectorFunctionality:compoundConditionType" substitutionGroup="connectorCausalExpression:compoundCondition"/>
<element name="simpleAction" substitutionGroup="connectorCausalExpression:simpleAction"/>
<element name="compoundAction" substitutionGroup="connectorCausalExpression:compoundAction"/>
<element name="assessmentStatement" substitutionGroup="connectorAssessmentExpression:assessmentStatement"/>
<element name="attributeAssessment" substitutionGroup="connectorAssessmentExpression:attributeAssessment"/>
<element name="valueAssessment" substitutionGroup="connectorAssessmentExpression:valueAssessment"/>
<element name="compoundStatement" substitutionGroup="connectorAssessmentExpression:compoundStatement"/>
</schema>
NCL 3.0 CompositeNodeInterface
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30CompositeNodeInterface.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Composite Node Interface module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:compositeInterface="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
targetNamespace="http://www.ncl.org.br/NCL3.0/CompositeNodeInterface"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="compositeNodePortPrototype">
<attribute name="id" type="ID" use="required" />
<attribute name="component" type="IDREF" use="required"/>
<attribute name="interface" type="string" use="optional" />
</complexType>
<!-- declare global elements in this module -->
<element name="port" type="compositeInterface:compositeNodePortPrototype" />
</schema>
NCL 3.0 ConnectorAssessmentExpression
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2006 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorAssessmentExpression.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Connector Assessment Expression module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:connectorAssessmentExpression="http://www.ncl.org.br/NCL3.0/ConnectorAssessmentExpression"
xmlns:connectorCommonPart="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
targetNamespace="http://www.ncl.org.br/NCL3.0/ConnectorAssessmentExpression"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- import the definitions in the modules namespaces -->
<import namespace="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCommonPart.xsd"/>
<simpleType name="comparatorPrototype">
<restriction base="string">
<enumeration value="eq" />
<enumeration value="ne" />
<enumeration value="gt" />
<enumeration value="lt" />
<enumeration value="gte" />
<enumeration value="lte" />
</restriction>
</simpleType>
<simpleType name="attributePrototype">
<restriction base="string">
<enumeration value="repeat" />
<enumeration value="occurrences" />
<enumeration value="state" />
<enumeration value="nodeProperty" />
</restriction>
</simpleType>
<simpleType name="statePrototype">
<restriction base="string">
<enumeration value="sleeping" />
<enumeration value="occurring" />
<enumeration value="paused" />
</restriction>
</simpleType>
<simpleType name="valueUnion">
<union memberTypes="string connectorAssessmentExpression:statePrototype"/>
</simpleType>
<complexType name="assessmentStatementPrototype" >
<sequence>
<element ref="connectorAssessmentExpression:attributeAssessment"/>
<choice>
<element ref="connectorAssessmentExpression:attributeAssessment"/>
<element ref="connectorAssessmentExpression:valueAssessment"/>
</choice>
</sequence>
<attribute name="comparator" type="connectorAssessmentExpression:comparatorPrototype" use="required"/>
</complexType>
<complexType name="attributeAssessmentPrototype">
<attribute name="role" type="string" use="required"/>
<attribute name="eventType" type="connectorCommonPart:eventPrototype" use="required"/>
<attribute name="key" type="string" use="optional"/>
<attribute name="attributeType" type="connectorAssessmentExpression:attributePrototype" use="optional"/>
<attribute name="offset" type="string" use="optional"/>
</complexType>
<complexType name="valueAssessmentPrototype">
<attribute name="value" type="connectorAssessmentExpression:valueUnion" use="required"/>
</complexType>
<complexType name="compoundStatementPrototype">
<choice minOccurs="1" maxOccurs="unbounded">
<element ref="connectorAssessmentExpression:assessmentStatement" />
<element ref="connectorAssessmentExpression:compoundStatement" />
</choice>
<attribute name="operator" type="connectorCommonPart:logicalOperatorPrototype" use="required"/>
<attribute name="isNegated" type="boolean" use="optional"/>
</complexType>
<!-- declare global elements in this module -->
<element name="assessmentStatement" type="connectorAssessmentExpression:assessmentStatementPrototype" />
<element name="attributeAssessment" type="connectorAssessmentExpression:attributeAssessmentPrototype" />
<element name="valueAssessment" type="connectorAssessmentExpression:valueAssessmentPrototype" />
<element name="compoundStatement" type="connectorAssessmentExpression:compoundStatementPrototype" />
</schema>
NCL 3.0 ConnectorBase
<!-- XML Schema for the NCL modules This is NCL Copyright: 2000-2006 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved. See http://www.telemidia.puc-rio.br Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorBase.xsd Author: TeleMidia Laboratory Revision: 19/09/2006 Schema for the NCL Connector Base module namespace. --> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:connectorBase="http://www.ncl.org.br/NCL3.0/ConnectorBase" targetNamespace="http://www.ncl.org.br/NCL3.0/ConnectorBase" elementFormDefault="qualified" attributeFormDefault="unqualified" > <complexType name="connectorBasePrototype"> <attribute name="id" type="ID" use="optional"/> </complexType> <!-- declare global elements in this module --> <element name="connectorBase" type="connectorBase:connectorBasePrototype"/> </schema>
NCL 3.0 ConnectorCausalExpression
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2006 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCausalExpression.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Connector Causal Expression module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:connectorCausalExpression="http://www.ncl.org.br/NCL3.0/ConnectorCausalExpression"
xmlns:connectorCommonPart="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
targetNamespace="http://www.ncl.org.br/NCL3.0/ConnectorCausalExpression"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- import the definitions in the modules namespaces -->
<import namespace="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
schemaLocation="http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCommonPart.xsd"/>
<simpleType name="conditionRoleUnion">
<union memberTypes="string connectorCausalExpression:conditionRolePrototype"/>
</simpleType>
<simpleType name="conditionRolePrototype">
<restriction base="string">
<enumeration value="onBegin" />
<enumeration value="onEnd" />
<enumeration value="onPause" />
<enumeration value="onResume" />
<enumeration value="onAbort" />
</restriction>
</simpleType>
<simpleType name="maxUnion">
<union memberTypes="positiveInteger connectorCausalExpression:unboundedString"/>
</simpleType>
<simpleType name="unboundedString">
<restriction base="string">
<pattern value="unbounded"/>
</restriction>
</simpleType>
<complexType name="simpleConditionPrototype">
<attribute name="role" type="connectorCausalExpression:conditionRoleUnion" use="required"/>
<attribute name="eventType" type="connectorCommonPart:eventPrototype" use="optional"/>
<attribute name="key" type="string" use="optional"/>
<attribute name="transition" type="connectorCommonPart:transitionPrototype" use="optional"/>
<attribute name="delay" type="string" use="optional"/>
<attribute name="min" type="positiveInteger" use="optional"/>
<attribute name="max" type="connectorCausalExpression:maxUnion" use="optional"/>
<attribute name="qualifier" type="connectorCommonPart:logicalOperatorPrototype" use="optional"/>
</complexType>
<complexType name="compoundConditionPrototype">
<attribute name="operator" type="connectorCommonPart:logicalOperatorPrototype" use="required"/>
<attribute name="delay" type="string" use="optional"/>
</complexType>
<simpleType name="actionRoleUnion">
<union memberTypes="string connectorCausalExpression:actionNamePrototype"/>
</simpleType>
<simpleType name="actionNamePrototype">
<restriction base="string">
<enumeration value="start" />
<enumeration value="stop" />
<enumeration value="pause" />
<enumeration value="resume" />
<enumeration value="abort" />
<enumeration value="set" />
</restriction>
</simpleType>
<simpleType name="actionOperatorPrototype">
<restriction base="string">
<enumeration value="par" />
<enumeration value="seq" />
</restriction>
</simpleType>
<complexType name="simpleActionPrototype">
<attribute name="role" type="connectorCausalExpression:actionRoleUnion" use="required"/>
<attribute name="eventType" type="connectorCommonPart:eventPrototype" use="optional"/>
<attribute name="actionType" type="connectorCausalExpression:actionNamePrototype" use="optional"/>
<attribute name="delay" type="string" use="optional"/>
<attribute name="value" type="string" use="optional"/>
<attribute name="repeat" type="positiveInteger" use="optional"/>
<attribute name="repeatDelay" type="string" use="optional"/>
<attribute name="min" type="positiveInteger" use="optional"/>
<attribute name="max" type="connectorCausalExpression:maxUnion" use="optional"/>
<attribute name="qualifier" type="connectorCausalExpression:actionOperatorPrototype" use="optional"/>
</complexType>
<complexType name="compoundActionPrototype">
<choice minOccurs="2" maxOccurs="unbounded">
<element ref="connectorCausalExpression:simpleAction" />
<element ref="connectorCausalExpression:compoundAction" />
</choice>
<attribute name="operator" type="connectorCausalExpression:actionOperatorPrototype" use="required"/>
<attribute name="delay" type="string" use="optional"/>
</complexType>
<!-- declare global elements in this module -->
<element name="simpleCondition" type="connectorCausalExpression:simpleConditionPrototype" />
<element name="compoundCondition" type="connectorCausalExpression:compoundConditionPrototype" />
<element name="simpleAction" type="connectorCausalExpression:simpleActionPrototype" />
<element name="compoundAction" type="connectorCausalExpression:compoundActionPrototype" />
</schema>
NCL 3.0 ConnectorCommonPart
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30ConnectorCommonPart.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Connector Common Part module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:connectorCommonPart="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
targetNamespace="http://www.ncl.org.br/NCL3.0/ConnectorCommonPart"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="parameterPrototype">
<attribute name="name" type="string" use="required"/>
<attribute name="type" type="string" use="optional"/>
</complexType>
<simpleType name="eventPrototype">
<restriction base="string">
<enumeration value="presentation" />
<enumeration value="selection" />
<enumeration value="attribution" />
<enumeration value="composition" />
</restriction>
</simpleType>
<simpleType name="logicalOperatorPrototype">
<restriction base="string">
<enumeration value="and" />
<enumeration value="or" />
</restriction>
</simpleType>
<simpleType name="transitionPrototype">
<restriction base="string">
<enumeration value="starts" />
<enumeration value="stops" />
<enumeration value="pauses" />
<enumeration value="resumes" />
<enumeration value="aborts" />
</restriction>
</simpleType>
</schema>
NCL 3.0 ContentControl
<!--
XML Schema for the NCL modules
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/modules/NCL30ContentControl.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL ContentControl module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:contentControl="http://www.ncl.org.br/NCL3.0/ContentControl"
targetNamespace="http://www.ncl.org.br/NCL3.0/ContentControl"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="defaultComponentPrototype">
<attribute name="component" type="IDREF" use="required" />
</complexType>
<!-- define the switch element prototype -->
<complexType name="switchPrototype">
<choice>
<element ref="contentControl:defaultComponent" minOccurs="0" maxOccurs="1"/>
</choice>
<attribute name="id" type="ID" use="required"/>
</complexType>
<!-- declare global elements in this module -->
<element name="defaultComponent" type="contentControl:defaultComponentPrototype"/>
<element name="switch" type="contentControl:switchPrototype"/>
</schema>
NCL 3.0 Context
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Context.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Context module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:context="http://www.ncl.org.br/NCL3.0/Context"
targetNamespace="http://www.ncl.org.br/NCL3.0/Context"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- define the compositeNode element prototype -->
<complexType name="contextPrototype">
<attribute name="id" type="ID" use="required"/>
</complexType>
<!-- declare global elements in this module -->
<element name="context" type="context:contextPrototype"/>
</schema>
NCL 3.0 Descriptor
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Descriptor.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Descriptor module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:descriptor="http://www.ncl.org.br/NCL3.0/Descriptor"
targetNamespace="http://www.ncl.org.br/NCL3.0/Descriptor"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="descriptorParamPrototype">
<attribute name="name" type="string" use="required" />
<attribute name="value" type="string" use="required"/>
</complexType>
<complexType name="descriptorPrototype">
<sequence minOccurs="0" maxOccurs="unbounded">
<element ref="descriptor:descriptorParam"/>
</sequence>
<attribute name="id" type="ID" use="required"/>
<attribute name="player" type="string" use="optional"/>
</complexType>
<!--
Formatters should support the following descriptorParam names.
* For audio players: soundLevel; balanceLevel; trebleLevel; bassLevel.
* For text players: style, which refers to a style sheet with information for text
presentation; textAlign; fontColor; FontFamily; fontStyle; fontSize; fontVariant;
fontWeight.
* For visual media (any NCL media object, represented by a <media> element, whose
content produces a visual presentation when the object is started) players : background,
specifying the background color used to fill the area of a region displaying media;
scroll, which allows the specification of how an author would like to configure the
scroll in a region; fit, indicating how an object will be presented (hidden, fill, meet,
meetBest, slice); transparency, indicating the degree of transparency of an object
presentation (the value shall be between 0 and 1, or a real value in the range [0,100]
ending with the character "%" (e.g. 30%)); visible, indicating if the presentation is to
be seen or hidden; rgbChromakey; the object positioning parameters: top, left, bottom,
right, width, height, zIndex, plan, location, size and bounds; the focus movement
parameters: moveLeft, moveRight, moveUp, moveDown, focusIndex; the other related focus
parameters: focusBorderColor, selBorderColor, focusBorderWidth, focusBorderTransparency,
focusSrc, and focusSelSrc; the transition parameters: transIn and transOut; the timing
parameters: explicitDur and freeze; and the multiple device parameters: baseDeviceRegion
and deviceClass.
* For players in general: player; reusePlayer, which determines if a new player shall be
instantiated or if a player already instantiated shall be used; and playerLife, which
specifies what will happen to the player instance at the end of the presentation.
-->
<complexType name="descriptorBasePrototype">
<attribute name="id" type="ID" use="optional"/>
</complexType>
<!-- declare global elements in this module -->
<element name="descriptorParam" type="descriptor:descriptorParamPrototype"/>
<element name="descriptor" type="descriptor:descriptorPrototype"/>
<element name="descriptorBase" type="descriptor:descriptorBasePrototype"/>
<!-- declare global attributes in this module -->
<attributeGroup name="descriptorAttrs">
<attribute name="descriptor" type="string" use="optional"/>
</attributeGroup>
</schema>
NCL 3.0 DescriptorControl
<!--
XML Schema for the NCL modules
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/modules/NCL30DescriptorControl.xsd
Author: TeleMidia Laboratory
Revision: 19/06/2006
Schema for the NCL DescriptorControl module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:descriptorControl="http://www.ncl.org.br/NCL3.0/DescriptorControl"
targetNamespace="http://www.ncl.org.br/NCL3.0/DescriptorControl"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="defaultDescriptorPrototype">
<attribute name="descriptor" type="IDREF" use="required" />
</complexType>
<!-- define the descriptor switch element prototype -->
<complexType name="descriptorSwitchPrototype">
<choice>
<element ref="descriptorControl:defaultDescriptor" minOccurs="0" maxOccurs="1"/>
</choice>
<attribute name="id" type="ID" use="required"/>
</complexType>
<!-- declare global elements in this module -->
<element name="defaultDescriptor" type="descriptorControl:defaultDescriptorPrototype"/>
<element name="descriptorSwitch" type="descriptorControl:descriptorSwitchPrototype"/>
</schema>
NCL 3.0 EntityReuse
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30EntityReuse.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL EntityReuse module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:entityReuse="http://www.ncl.org.br/NCL3.0/EntityReuse"
targetNamespace="http://www.ncl.org.br/NCL3.0/EntityReuse"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<attributeGroup name="entityReuseAttrs">
<attribute name="refer" type="string" use="optional"/>
</attributeGroup>
</schema>
NCL 3.0 ExtendedEntityReuse
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30ExtendedEntityReuse.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL ExtendedEntityReuse module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:extendedEntityReuse="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
targetNamespace="http://www.ncl.org.br/NCL3.0/ExtendedEntityReuse"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<attributeGroup name="extendedEntityReuseAttrs">
<attribute name="instance" type="string" use="optional"/>
</attributeGroup>
</schema>
NCL 3.0 Import
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Import.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Import module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:import="http://www.ncl.org.br/NCL3.0/Import"
targetNamespace="http://www.ncl.org.br/NCL3.0/Import"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="importBasePrototype">
<attribute name="alias" type="ID" use="required"/>
<attribute name="region" type="IDREF" use="optional"/>
<attribute name="documentURI" type="anyURI" use="required"/>
<attribute name="baseId" type="IDREF" use="optional"/>
</complexType>
<complexType name="importNCLPrototype">
<attribute name="alias" type="ID" use="required"/>
<attribute name="documentURI" type="anyURI" use="required"/>
</complexType>
<complexType name="importedDocumentBasePrototype">
<sequence minOccurs="1" maxOccurs="unbounded">
<element ref="import:importNCL" />
</sequence>
<attribute name="id" type="ID" use="optional" />
</complexType>
<!-- declare global elements in this module -->
<element name="importBase" type="import:importBasePrototype"/>
<element name="importNCL" type="import:importNCLPrototype"/>
<element name="importedDocumentBase" type="import:importedDocumentBasePrototype"/>
</schema>
NCL 3.0 KeyNavigation
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30KeyNavigation.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL KeyNavigation module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:keyNavigation="http://www.ncl.org.br/NCL3.0/KeyNavigation"
targetNamespace="http://www.ncl.org.br/NCL3.0/KeyNavigation"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<simpleType name="colorPrototype">
<restriction base="string">
<enumeration value="white" />
<enumeration value="black" />
<enumeration value="silver" />
<enumeration value="gray" />
<enumeration value="red" />
<enumeration value="maroon" />
<enumeration value="fuchsia" />
<enumeration value="purple" />
<enumeration value="lime" />
<enumeration value="green" />
<enumeration value="yellow" />
<enumeration value="olive" />
<enumeration value="blue" />
<enumeration value="navy" />
<enumeration value="aqua" />
<enumeration value="teal" />
</restriction>
</simpleType>
<!-- declare global attributes in this module -->
<!-- define the keyNavigation attribute group -->
<attributeGroup name="keyNavigationAttrs">
<attribute name="moveLeft" type="positiveInteger" use="optional"/>
<attribute name="moveRight" type="positiveInteger" use="optional"/>
<attribute name="moveUp" type="positiveInteger" use="optional"/>
<attribute name="moveDown" type="positiveInteger" use="optional"/>
<attribute name="focusIndex" type="positiveInteger" use="optional"/>
<attribute name="focusBorderColor" type="keyNavigation:colorPrototype" use="optional"/>
<attribute name="focusBorderWidth" type="string" use="optional"/>
<attribute name="focusBorderTransparency" type="string" use="optional"/>
<attribute name="focusSrc" type="string" use="optional"/>
<attribute name="focusSelSrc" type="string" use="optional"/>
<attribute name="selBorderColor" type="keyNavigation:colorPrototype" use="optional"/>
</attributeGroup>
</schema>
NCL 3.0 Layout
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Layout.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Layout module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:layout="http://www.ncl.org.br/NCL3.0/Layout"
targetNamespace="http://www.ncl.org.br/NCL3.0/Layout"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="regionBasePrototype">
<attribute name="id" type="ID" use="optional"/>
<attribute name="device" type="string" use="optional"/>
<attribute name="region" type="string" use="optional"/>
</complexType>
<complexType name="regionPrototype">
<sequence minOccurs="0" maxOccurs="unbounded">
<element ref="layout:region" />
</sequence>
<attribute name="id" type="ID" use="required"/>
<attribute name="title" type="string" use="optional"/>
<attribute name="height" type="string" use="optional"/>
<attribute name="left" type="string" use="optional"/>
<attribute name="right" type="string" use="optional"/>
<attribute name="top" type="string" use="optional"/>
<attribute name="bottom" type="string" use="optional"/>
<attribute name="width" type="string" use="optional"/>
<attribute name="zIndex" type="integer" use="optional"/>
</complexType>
<!-- declare global attributes in this module -->
<!-- define the region attributeGroup -->
<attributeGroup name="regionAttrs">
<attribute name="region" type="string" use="optional"/>
</attributeGroup>
<!-- declare global elements in this module -->
<element name="regionBase" type="layout:regionBasePrototype"/>
<element name="region" type="layout:regionPrototype"/>
</schema>
NCL 3.0 Linking
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Linking.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Linking module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:linking="http://www.ncl.org.br/NCL3.0/Linking"
targetNamespace="http://www.ncl.org.br/NCL3.0/Linking"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="paramPrototype">
<attribute name="name" type="string" use="required"/>
<attribute name="value" type="anySimpleType" use="required"/>
</complexType>
<complexType name="bindPrototype">
<sequence minOccurs="0" maxOccurs="unbounded">
<element ref="linking:bindParam"/>
</sequence>
<attribute name="role" type="string" use="required"/>
<attribute name="component" type="IDREF" use="required"/>
<attribute name="interface" type="string" use="optional"/>
</complexType>
<complexType name="linkPrototype">
<sequence>
<element ref="linking:linkParam" minOccurs="0" maxOccurs="unbounded"/>
<element ref="linking:bind" minOccurs="2" maxOccurs="unbounded"/>
</sequence>
<attribute name="id" type="ID" use="optional"/>
<attribute name="xconnector" type="string" use="required"/>
</complexType>
<!-- declare global elements in this module -->
<element name="linkParam" type="linking:paramPrototype"/>
<element name="bindParam" type="linking:paramPrototype"/>
<element name="bind" type="linking:bindPrototype" />
<element name="link" type="linking:linkPrototype" />
</schema>
NCL 3.0 Media
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Media.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Media module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:media="http://www.ncl.org.br/NCL3.0/Media"
targetNamespace="http://www.ncl.org.br/NCL3.0/Media"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="mediaPrototype">
<attribute name="id" type="ID" use="required"/>
<attribute name="type" type="string" use="optional"/>
<attribute name="src" type="anyURI" use="optional"/>
</complexType>
<!-- declare global elements in this module -->
<element name="media" type="media:mediaPrototype"/>
</schema>
NCL 3.0 MediaContentAnchor
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30MediaContentAnchor.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Media Content Anchor module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:mediaAnchor="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
targetNamespace="http://www.ncl.org.br/NCL3.0/MediaContentAnchor"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- define the temporalAnchorAttrs attribute group -->
<attributeGroup name="temporalAnchorAttrs">
<attribute name="begin" type="string" use="optional"/>
<attribute name="end" type="string" use="optional"/>
</attributeGroup>
<!-- define the textAnchorAttrs attribute group -->
<attributeGroup name="textAnchorAttrs">
<attribute name="beginText" type="string" use="optional"/>
<attribute name="beginPosition" type="unsignedLong" use="optional"/>
<attribute name="endText" type="string" use="optional"/>
<attribute name="endPosition" type="unsignedLong" use="optional"/>
</attributeGroup>
<!-- define the sampleAnchorAttrs attribute group -->
<attributeGroup name="sampleAnchorAttrs">
<attribute name="first" type="string" use="optional"/>
<attribute name="last" type="string" use="optional"/>
</attributeGroup>
<!-- define the coordsAnchorAttrs attribute group -->
<attributeGroup name="coordsAnchorAttrs">
<attribute name="coords" type="string" use="optional"/>
</attributeGroup>
<!-- define the labelAttrs attribute group -->
<attributeGroup name="labelAttrs">
<attribute name="label" type="string" use="optional"/>
</attributeGroup>
<!-- define the clip attribute group -->
<attributeGroup name="clipAttrs">
<attribute name="clip" type="string" use="optional"/>
</attributeGroup>
<complexType name="componentAnchorPrototype">
<attribute name="id" type="ID" use="required"/>
<attributeGroup ref="mediaAnchor:coordsAnchorAttrs" />
<attributeGroup ref="mediaAnchor:temporalAnchorAttrs" />
<attributeGroup ref="mediaAnchor:textAnchorAttrs" />
<attributeGroup ref="mediaAnchor:sampleAnchorAttrs" />
<attributeGroup ref="mediaAnchor:labelAttrs" />
<attributeGroup ref="mediaAnchor:clipAttrs" />
</complexType>
<!-- declare global elements in this module -->
<element name="area" type="mediaAnchor:componentAnchorPrototype"/>
</schema>
NCL 3.0 Metainformation
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Metainformation.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Metainformation module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:metainformation="http://www.ncl.org.br/NCL3.0/Metainformation"
targetNamespace="http://www.ncl.org.br/NCL3.0/Metainformation"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="metaPrototype">
<attribute name="name" type="string" use="required"/>
<attribute name="content" type="string" use="required"/>
</complexType>
<complexType name="metadataPrototype">
<sequence>
<any minOccurs="0"/>
</sequence>
</complexType>
<!-- declare global elements in this module -->
<element name="meta" type="metainformation:metaPrototype"/>
<!-- declare global elements in this module -->
<element name="metadata" type="metainformation:metadataPrototype"/>
</schema>
NCL 3.0 PropertyAnchor
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30PropertyAnchor.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Property Anchor module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:propertyAnchor="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
targetNamespace="http://www.ncl.org.br/NCL3.0/PropertyAnchor"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="propertyAnchorPrototype">
<attribute name="name" type="string" use="required" />
<attribute name="value" type="string" use="optional" />
<attribute name="externable" type="boolean" use="optional" />
</complexType>
<!--
The following reserved words are used for properties' names.
* For audio media-obejcts: soundLevel; balanceLevel; trebleLevel; bassLevel.
* For text media-objects: style, which refers to a style sheet with information for text
presentation; textAlign; fontColor; fontFamily; fontStyle; fontSize; fontVariant;
fontWeight.
* For visual media-objects (any NCL media object, represented by a <media> element,
whose content produces a visual presentation when the object is started): background,
specifying the background color used to fill the area of a region displaying media;
scroll, which allows the specification of how an author would like to configure the
scroll in a region; fit, indicating how an object will be presented (hidden, fill, meet,
meetBest, slice); transparency, indicating the degree of transparency of an object
presentation (the value shall be between 0 and 1, or a real value in the range [0,100]
ending with the character "%" (e.g. 30%)); visible, indicating if the presentation is to
be seen or hidden; rgbChromakey; the object positioning parameters: top, left, bottom,
right, width, height, zIndex, plan, location, size and bounds; the focus movement
parameters: moveLeft, moveRight, moveUp, moveDown, focusIndex; the other related focus
parameters: focusBorderColor, selBorderColor, focusBorderWidth, focusBorderTransparency,
focusSrc, and focusSelSrc; the transition parameters: transIn and transOut; the timing
parameters: explicitDur and freeze; and the multiple device parameters: baseDeviceRegion
and deviceClass.
* For media-objects in general: player; reusePlayer, which determines if a new player
shall be instantiated or if a player already instantiated shall be used; and playerLife,
which specifies what will happen to the player instance at the end of the presentation.
-->
<!-- declare global elements in this module -->
<element name="property" type="propertyAnchor:propertyAnchorPrototype"/>
</schema>
NCL 3.0 Structure
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Structure.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the Structure module namespace,
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:structure="http://www.ncl.org.br/NCL3.0/Structure"
targetNamespace="http://www.ncl.org.br/NCL3.0/Structure"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<!-- define the top-down structure of an NCL language document. -->
<!-- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = -->
<complexType name="nclPrototype">
<sequence>
<element ref="structure:head" minOccurs="0" maxOccurs="1"/>
<element ref="structure:body" minOccurs="0" maxOccurs="1"/>
</sequence>
<attribute name="id" type="ID" use="required"/>
<attribute name="title" type="string" use="optional"/>
</complexType>
<complexType name="headPrototype">
</complexType>
<complexType name="bodyPrototype">
<attribute name="id" type="ID" use="optional"/>
</complexType>
<!-- declare global elements in this module -->
<element name="ncl" type="structure:nclPrototype"/>
<element name="head" type="structure:headPrototype"/>
<element name="body" type="structure:bodyPrototype"/>
</schema>
NCL 3.0 SwitchInterface
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30SwitchInterface.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Switch Interface module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:switchInterface="http://www.ncl.org.br/NCL3.0/SwitchInterface"
targetNamespace="http://www.ncl.org.br/NCL3.0/SwitchInterface"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="mappingPrototype">
<attribute name="component" type="IDREF" use="required"/>
<attribute name="interface" type="string" use="optional"/>
</complexType>
<complexType name="switchPortPrototype">
<sequence>
<element ref="switchInterface:mapping" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="id" type="ID" use="required"/>
</complexType>
<!-- declare global elements in this module -->
<element name="mapping" type="switchInterface:mappingPrototype"/>
<element name="switchPort" type="switchInterface:switchPortPrototype" />
</schema>
NCL 3.0 TestRule
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30TestRule.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL TestRule module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:testRule="http://www.ncl.org.br/NCL3.0/TestRule"
targetNamespace="http://www.ncl.org.br/NCL3.0/TestRule"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="rulePrototype">
<attribute name="id" type="ID" use="optional"/>
<attribute name="var" type="string" use="required"/>
<attribute name="value" type="string" use="required"/>
<attribute name="comparator" use="required">
<simpleType>
<restriction base="string">
<enumeration value="eq"/>
<enumeration value="ne"/>
<enumeration value="gt"/>
<enumeration value="gte"/>
<enumeration value="lt"/>
<enumeration value="lte"/>
</restriction>
</simpleType>
</attribute>
</complexType>
<complexType name="compositeRulePrototype">
<choice minOccurs="2" maxOccurs="unbounded">
<element ref="testRule:rule"/>
<element ref="testRule:compositeRule"/>
</choice>
<attribute name="id" type="ID" use="required"/>
<attribute name="operator" use="required">
<simpleType>
<restriction base="string">
<enumeration value="and"/>
<enumeration value="or"/>
</restriction>
</simpleType>
</attribute>
</complexType>
<complexType name="ruleBasePrototype">
<attribute name="id" type="ID" use="optional"/>
</complexType>
<!-- declare global elements in this module -->
<element name="rule" type="testRule:rulePrototype"/>
<element name="compositeRule" type="testRule:compositeRulePrototype"/>
<element name="ruleBase" type="testRule:ruleBasePrototype"/>
</schema>
NCL 3.0 TestRuleUse
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30TestRuleUse.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL TestRuleUse module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:testRule="http://www.ncl.org.br/NCL3.0/TestRuleUse"
targetNamespace="http://www.ncl.org.br/NCL3.0/TestRuleUse"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<complexType name="bindRulePrototype">
<attribute name="constituent" type="IDREF" use="required" />
<attribute name="rule" type="string" use="required" />
</complexType>
<!-- declare global elements in this module -->
<element name="bindRule" type="testRule:bindRulePrototype"/>
</schema>
NCL 3.0 Timing
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2005 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Timing.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Timing module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:timing="http://www.ncl.org.br/NCL3.0/Timing"
targetNamespace="http://www.ncl.org.br/NCL3.0/Timing"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- declare global attributes in this module -->
<!-- define the explicitDur attribute group -->
<attributeGroup name="explicitDurAttrs">
<attribute name="explicitDur" type="string" use="optional"/>
</attributeGroup>
<!-- define the freeze attribute group -->
<attributeGroup name="freezeAttrs">
<attribute name="freeze" type="boolean" use="optional"/>
</attributeGroup>
</schema>
NCL 3.0 Transition
<!--
XML Schema for the NCL modules
This is NCL
Copyright: 2000-2006 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved.
See http://www.telemidia.puc-rio.br
Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30Transition.xsd
Author: TeleMidia Laboratory
Revision: 19/09/2006
Schema for the NCL Transition module namespace.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:transition="http://www.ncl.org.br/NCL3.0/Transition"
targetNamespace="http://www.ncl.org.br/NCL3.0/Transition"
elementFormDefault="qualified" attributeFormDefault="unqualified" >
<!-- declare global attributes in this module -->
<!-- define the type attribute prototype -->
<simpleType name="typePrototype">
<restriction base="string">
<enumeration value="in"/>
<enumeration value="barWipe"/>
<enumeration value="boxWipe"/>
<enumeration value="fourBoxWipe"/>
<enumeration value="barnDoorWipe"/>
<enumeration value="diagonalWipe"/>
<enumeration value="bowTieWipe"/>
<enumeration value="miscDiagonalWipe"/>
<enumeration value="veeWipe"/>
<enumeration value="barnVeeWipe"/>
<enumeration value="zigZagWipe"/>
<enumeration value="barnZigZagWipe"/>
<enumeration value="irisWipe"/>
<enumeration value="triangleWipe"/>
<enumeration value="arrowHeadWipe"/>
<enumeration value="pentagonWipe"/>
<enumeration value="hexagonWipe"/>
<enumeration value="ellipseWipe"/>
<enumeration value="eyeWipe"/>
<enumeration value="roundRectWipe"/>
<enumeration value="starWipe"/>
<enumeration value="miscShapeWipe"/>
<enumeration value="clockWipe"/>
<enumeration value="pinWheelWipe"/>
<enumeration value="singleSweepWipe"/>
<enumeration value="fanWipe"/>
<enumeration value="doubleFanWipe"/>
<enumeration value="doubleSweepWipe"/>
<enumeration value="saloonDoorWipe"/>
<enumeration value="windshieldWipe"/>
<enumeration value="snakeWipe"/>
<enumeration value="spiralWipe"/>
<enumeration value="parallelSnakesWipe"/>
<enumeration value="boxSnakesWipe"/>
<enumeration value="waterfallWipe"/>
<enumeration value="pushWipe"/>
<enumeration value="slideWipe"/>
<enumeration value="fade"/>
<enumeration value="audioFade"/>
<enumeration value="audioVisualFade"/>
</restriction>
</simpleType>
<!-- define subType attribute prototype-->
<simpleType name="subTypePrototype">
<restriction base="string">
<enumeration value="bottom"/>
<enumeration value="bottomCenter"/>
<enumeration value="bottomLeft"/>
<enumeration value="bottomLeftClockwise"/>
<enumeration value="bottomLeftCounterClockwise"/>
<enumeration value="bottomLeftDiagonal"/>
<enumeration value="bottomRight"/>
<enumeration value="bottomRightClockwise"/>
<enumeration value="bottomRightCounterClockwise"/>
<enumeration value="bottomRightDiagonal"/>
<enumeration value="centerRight"/>
<enumeration value="centerTop"/>
<enumeration value="circle"/>
<enumeration value="clockwiseBottom"/>
<enumeration value="clockwiseBottomRight"/>
<enumeration value="clockwiseLeft"/>
<enumeration value="clockwiseNine"/>
<enumeration value="clockwiseRight"/>
<enumeration value="clockwiseSix"/>
<enumeration value="clockwiseThree"/>
<enumeration value="clockwiseTop"/>
<enumeration value="clockwiseTopLeft"/>
<enumeration value="clockwiseTwelve"/>
<enumeration value="cornersIn"/>
<enumeration value="cornersOut"/>
<enumeration value="counterClockwiseBottomLeft"/>
<enumeration value="counterClockwiseTopRight"/>
<enumeration value="crossfade"/>
<enumeration value="diagonalBottomLeft"/>
<enumeration value="diagonalBottomLeftOpposite"/>
<enumeration value="diagonalTopLeft"/>
<enumeration value="diagonalTopLeftOpposite"/>
<enumeration value="diamond"/>
<enumeration value="doubleBarnDoor"/>
<enumeration value="doubleDiamond"/>
<enumeration value="down"/>
<enumeration value="fadeFromColor"/>
<enumeration value="fadeToColor"/>
<enumeration value="fanInHorizontal"/>
<enumeration value="fanInVertical"/>
<enumeration value="fanOutHorizontal"/>
<enumeration value="fanOutVertical"/>
<enumeration value="fivePoint"/>
<enumeration value="fourBlade"/>
<enumeration value="fourBoxHorizontal"/>
<enumeration value="fourBoxVertical"/>
<enumeration value="fourPoint"/>
<enumeration value="fromBottom"/>
<enumeration value="fromLeft"/>
<enumeration value="fromRight"/>
<enumeration value="fromTop"/>
<enumeration value="heart"/>
<enumeration value="horizontal"/>
<enumeration value="horizontalLeft"/>
<enumeration value="horizontalLeftSame"/>
<enumeration value="horizontalRight"/>
<enumeration value="horizontalRightSame"/>
<enumeration value="horizontalTopLeftOpposite"/>
<enumeration value="horizontalTopRightOpposite"/>
<enumeration value="keyhole"/>
<enumeration value="left"/>
<enumeration value="leftCenter"/>
<enumeration value="leftToRight"/>
<enumeration value="oppositeHorizontal"/>
<enumeration value="oppositeVertical"/>
<enumeration value="parallelDiagonal"/>
<enumeration value="parallelDiagonalBottomLeft"/>
<enumeration value="parallelDiagonalTopLeft"/>
<enumeration value="parallelVertical"/>
<enumeration value="rectangle"/>
<enumeration value="right"/>
<enumeration value="rightCenter"/>
<enumeration value="sixPoint"/>
<enumeration value="top"/>
<enumeration value="topCenter"/>
<enumeration value="topLeft"/>
<enumeration value="topLeftClockwise"/>
<enumeration value="topLeftCounterClockwise"/>
<enumeration value="topLeftDiagonal"/>
<enumeration value="topLeftHorizontal"/>
<enumeration value="topLeftVertical"/>
<enumeration value="topRight"/>
<enumeration value="topRightClockwise"/>
<enumeration value="topRightCounterClockwise"/>
<enumeration value="topRightDiagonal"/>
<enumeration value="topToBottom"/>
<enumeration value="twoBladeHorizontal"/>
<enumeration value="twoBladeVertical"/>
<enumeration value="twoBoxBottom"/>
<enumeration value="twoBoxLeft"/>
<enumeration value="twoBoxRight"/>
<enumeration value="twoBoxTop"/>
<enumeration value="up"/>
<enumeration value="vertical"/>
<enumeration value="verticalBottomLeftOpposite"/>
<enumeration value="verticalBottomSame"/>
<enumeration value="verticalLeft"/>
<enumeration value="verticalRight"/>
<enumeration value="verticalTopLeftOpposite"/>
<enumeration value="verticalTopSame"/>
</restriction>
</simpleType>
<attributeGroup name="transAttrs">
<attribute name="transIn" type="string" use="optional"/>
<attribute name="transOut" type="string" use="optional"/>
</attributeGroup>
<!-- define the transition attribute group -->
<attributeGroup name="transitionAttrs">
<attribute name="type" type="transition:typePrototype" use="required"/>
<attribute name="subtype" type="transition:subTypePrototype" use="optional"/>
<attribute name="fadeColor" type="string" use="optional" default="black"/>
<attribute name="dur" type="string" use="optional"/>
<attribute name="startProgress" use="optional" default="0.0">
<simpleType>
<restriction base="decimal">
<minInclusive value="0.0"/>
<maxInclusive value="1.0"/>
</restriction>
</simpleType>
</attribute>
<attribute name="endProgress" use="optional" default="1.0">
<simpleType>
<restriction base="decimal">
<minInclusive value="0.0"/>
<maxInclusive value="1.0"/>
</restriction>
</simpleType>
</attribute>
<attribute name="direction" use="optional" default="forward">
<simpleType>
<restriction base="string">
<enumeration value="forward"/>
<enumeration value="reverse"/>
</restriction>
</simpleType>
</attribute>
</attributeGroup>
<!-- define the transition-modifier attribute group -->
<attributeGroup name="transitionModifierAttrs">
<attribute name="horzRepeat" type="decimal" use="optional" default="1.0"/>
<attribute name="vertRepeat" type="decimal" use="optional" default="1.0"/>
<attribute name="borderWidth" type="nonNegativeInteger" use="optional" default="0"/>
<attribute name="borderColor" type="string" use="optional" default="black"/>
</attributeGroup>
<complexType name="transitionPrototype">
<attribute name="id" type="ID" use="required"/>
<attributeGroup ref="transition:transitionAttrs"/>
<attributeGroup ref="transition:transitionModifierAttrs"/>
</complexType>
<!-- declare global element in this module -->
<element name="transition" type="transition:transitionPrototype"/>
</schema>
NCL 3.0 TransitionBase
<!-- XML Schema for the NCL modules This is NCL Copyright: 2000-2006 PUC-RIO/LABORATORIO TELEMIDIA, All Rights Reserved. See http://www.telemidia.puc-rio.br Public URI: http://www.ncl.org.br/NCL3.0/modules/NCL30TransitionBase.xsd Author: TeleMidia Laboratory Revision: 19/09/2006 Schema for the NCL Transition Base module namespace. --> <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:transitionBase="http://www.ncl.org.br/NCL3.0/TransitionBase" targetNamespace="http://www.ncl.org.br/NCL3.0/TransitionBase" elementFormDefault="qualified" attributeFormDefault="unqualified" > <complexType name="transitionBasePrototype"> <attribute name="id" type="ID" use="optional"/> </complexType> <!-- declare global elements in this module --> <element name="transitionBase" type="transitionBase:transitionBasePrototype"/> </schema>