Files
SyncHome/trunk/workspace/Fibex/fibex4flexray.xsd
2023-03-13 08:36:51 +00:00

792 lines
35 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.asam.net/xml/fbx/flexray" xmlns:fx="http://www.asam.net/xml/fbx" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:flexray="http://www.asam.net/xml/fbx/flexray" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.2.0a">
<xs:import namespace="http://www.asam.net/xml/fbx" schemaLocation="fibex.xsd"/>
<xs:simpleType name="CYCLE-REPETITION-TYPE">
<xs:restriction base="fx:CYCLE-REPETITION-TYPE">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="4"/>
<xs:enumeration value="8"/>
<xs:enumeration value="16"/>
<xs:enumeration value="32"/>
<xs:enumeration value="64"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CYCLE-COUNTER-TYPE">
<xs:restriction base="fx:CYCLE-COUNTER-TYPE">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="63"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CLUSTER-TYPE">
<xs:complexContent>
<xs:extension base="fx:CLUSTER-TYPE">
<xs:sequence>
<xs:element name="COLD-START-ATTEMPTS">
<xs:annotation>
<xs:documentation>The maximum number of times that a node in this cluster is permitted to attempt to start the cluster by initiating schedule synchronization.(gColdStartAttempts)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="31"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ACTION-POINT-OFFSET">
<xs:annotation>
<xs:documentation>Number of macroticks the action point is offset from the beginning of a static slots or symbol window. (gdActionPointOffset)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="63"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DYNAMIC-SLOT-IDLE-PHASE">
<xs:annotation>
<xs:documentation>The duration of the dynamic slot idle phase in minislots.(gdDynamicSlotIdlePhase)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MINISLOT">
<xs:annotation>
<xs:documentation>The duration of a minislot in macroticks.(gdMinislot)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="63"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MINISLOT-ACTION-POINT-OFFSET">
<xs:annotation>
<xs:documentation>Number of macroticks the minislot action point is offset from the beginning of a minislot. Unit: macroticks(gdMinislotActionPointOffset)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="31"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="N-I-T">
<xs:annotation>
<xs:documentation>The duration of the network idle time in macroticks(gdNIT)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="767"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SAMPLE-CLOCK-PERIOD" minOccurs="0">
<xs:annotation>
<xs:documentation>Sample clock period. gdSampleClockPeriod = gdBit / 8; Unit: µs (gdSampleClockPeriod)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:enumeration value="0.0125"/>
<xs:enumeration value="0.025"/>
<xs:enumeration value="0.05"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="STATIC-SLOT">
<xs:annotation>
<xs:documentation>The duration of a slot in the static segment. Unit: macroticks (gdStaticSlot)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="4"/>
<xs:maxInclusive value="659"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SYMBOL-WINDOW">
<xs:annotation>
<xs:documentation>The duration of the symbol window. Unit: macroticks (gdSymbolWindow)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="139"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="T-S-S-TRANSMITTER">
<xs:annotation>
<xs:documentation>Number of bits in the Transmission Start Sequence. Unit:bitDuration (gdTSSTransmitter)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="3"/>
<xs:maxInclusive value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="WAKE-UP" minOccurs="0">
<xs:annotation>
<xs:documentation>Wake-up related elements. If not used, then the device does not use wake up functionality.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="WAKE-UP-SYMBOL-RX-IDLE">
<xs:annotation>
<xs:documentation>Number of bits used by the node to test the duration of the "idle" portion of a received wakeup symbol. Equal to 6 µs minus a safe part. (Collisions, clock differences, and other effects can deform the Tx-wakeup pattern.) Unit:bitDuration (gdWakeupSymbolRxIdle)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="14"/>
<xs:maxInclusive value="59"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="WAKE-UP-SYMBOL-RX-LOW">
<xs:annotation>
<xs:documentation>Number of bits used by the node to test the LOW portion of a received wakeup symbol. Equal to 6 µs minus a safe part. (Active stars, clock differences, and other effects can deform the Tx-wakeup pattern). Unit:bitDuration (gdWakeupSymbolRxLow)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="10"/>
<xs:maxInclusive value="55"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="WAKE-UP-SYMBOL-RX-WINDOW">
<xs:annotation>
<xs:documentation>Number of bits used by a node to test the overall duration of a received wakeup symbol. Equal to 30 µs plus a safe part. (Clock differences and other effects can deform the Tx-wakeup pattern). Unit:bitDuration (gdWakeupSymbolRxWindow)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="76"/>
<xs:maxInclusive value="301"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="WAKE-UP-SYMBOL-TX-IDLE" minOccurs="0">
<xs:annotation>
<xs:documentation>Duration of the idle phase between two low phases inside a wakeup pattern. Unit:bitDuration (cdWakeupSymbolTxIdle)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="45"/>
<xs:maxInclusive value="180"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="WAKE-UP-SYMBOL-TX-LOW" minOccurs="0">
<xs:annotation>
<xs:documentation>Duration of low phase of a transmitted wakeup symbol. Unit:bitDuration (cdWakeupSymbolTxLow)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="15"/>
<xs:maxInclusive value="60"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LISTEN-NOISE">
<xs:annotation>
<xs:documentation>Upper limit for the start up and wake up listen timeout in the presence of noise. Expressed as a multiple of the cluster constant pdListenTimeout. (gListenNoise)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="16"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MACRO-PER-CYCLE">
<xs:annotation>
<xs:documentation>The number of macroticks in a communication cycle</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="10"/>
<xs:maxInclusive value="16000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MACROTICK">
<xs:annotation>
<xs:documentation>Duration of the cluster wide nominal macrotick, expressed in µs (pdMicrotick = pSamplesPerMicrotick * gdSampleClockPeriod). Unit: µs (gdMacrotick)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MAX-INITIALIZATION-ERROR">
<xs:annotation>
<xs:documentation>Maximum error that a node may have following integration. Unit: µs (gdMaxInitializationError)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="11.7"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MAX-WITHOUT-CLOCK-CORRECTION-FATAL">
<xs:annotation>
<xs:documentation>Threshold used for testing the vClockCorrectionFailed counter. Defines the number of consecutive even/odd cycle pairs with missing clock correction terms that will cause the protocol to transition from the POC:normal active or POC:normal passive state into the POC:halt state. Unit: Even/Odd Cycle Pairs (gMaxWithoutClockCorrectionFatal)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MAX-WITHOUT-CLOCK-CORRECTION-PASSIVE">
<xs:annotation>
<xs:documentation>Threshold used for testing the vClockCorrectionFailed counter. Defines the number of consecutive even/odd cycle pairs with missing clock correction terms that will cause the protocol to transition from the POC:normal active state to the POC:normal passive state. Note that gMaxWithoutClockCorrectonPassive = gMaxWithoutClockCorrectionFatal = 15. Unit: Even/Odd Cycle Pairs (gMaxWithoutClockCorrectionPassive)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="NETWORK-MANAGEMENT-VECTOR-LENGTH" minOccurs="0">
<xs:annotation>
<xs:documentation>Length of the Network Management vector in a cluster. Default: 0. Unit: byte (gNetworkManagementVectorLength)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="12"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="NUMBER-OF-MINISLOTS">
<xs:annotation>
<xs:documentation>Number of minislots in the dynamic segment. (gNumberOfMinislots)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="7986"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="NUMBER-OF-STATIC-SLOTS">
<xs:annotation>
<xs:documentation>The number of static slots in the static segment (gNumberOfStaticSlots)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="1023"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OFFSET-CORRECTION-START">
<xs:annotation>
<xs:documentation>Start of the offset correction phase within the NIT, expressed as the number of macroticks from the start of cycle. Unit: macroticks (gOffsetCorrectionStart)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="9"/>
<xs:maxInclusive value="15999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="PAYLOAD-LENGTH-STATIC">
<xs:annotation>
<xs:documentation>Payload length of a static frame (All static frames in a cluster have the same payload length). Unit: 16-bit WORDS (gPayloadLengthStatic)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="127"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SYNC-NODE-MAX">
<xs:annotation>
<xs:documentation>Maximum number of nodes that may send frames with the sync frame indicator bit set. (gSyncNodeMax)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="15"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CAS-RX-LOW-MAX" minOccurs="0">
<xs:annotation>
<xs:documentation>Upper limit of the CAS acceptance window. gdCASRxLowMax[gdBit] = ceil( 2 * (gdTSSTransmitter[gdBit] + cdCAS[gdBit]) * (1 + 2 * cClockDeviationMax) ). Unit:bitDuration (gdCASRxLowMax)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="67"/>
<xs:maxInclusive value="99"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CAS-RX-LOW-MIN" minOccurs="0">
<xs:annotation>
<xs:documentation>Lower limit of the CAS acceptance window. gdCASRxLowMin[gdBit] = floor( (gdTSSTransmitter[gdBit] + cdCAS[gdBit]) * (1 - 2 * cClockDeviationMax) ). Unit:bitDuration (gdCASRxLowMin)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="29"/>
<xs:maxInclusive value="29"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="BIT" minOccurs="0">
<xs:annotation>
<xs:documentation>Nominal bit time (= 1 / fx:SPEED). gdBit = cSamplesPerBit * gdSampleClockPeriod. Unit:µs (gdBit)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:enumeration value="0.1"/>
<xs:enumeration value="0.2"/>
<xs:enumeration value="0.4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CYCLE">
<xs:annotation>
<xs:documentation>Length of the cycle (See the minimum constraint for gMacroPerCycle. Maximum value is given by cdCycleMax). Unit:µs (gdCycle)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="10"/>
<xs:maxInclusive value="16000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CLUSTER-DRIFT-DAMPING">
<xs:annotation>
<xs:documentation>The cluster drift damping factor, expressed in multiples of the smallest microtick used in the cluster. Used to compute the local cluster drift damping factor pClusterDriftDamping. Unit:µT (gClusterDriftDamping)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="5"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OFFSET-CORRECTION-MAX" minOccurs="0">
<xs:annotation>
<xs:documentation>Cluster global magnitude of the maximum permissible offset correction value Unit:µs (gOffsetCorrectionMax)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="0.5"/>
<xs:maxInclusive value="381.1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CONTROLLER-TYPE">
<xs:complexContent>
<xs:extension base="fx:CONTROLLER-TYPE">
<xs:sequence>
<xs:element name="KEY-SLOT-USAGE">
<xs:annotation>
<xs:documentation>Flag indicating whether the Key Slot is used to transmit a startup frame and or a sync frame. (pKeySlotUsedForStartup, pKeySlotUsedForSync)</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice>
<xs:element name="STARTUP-SYNC">
<xs:annotation>
<xs:documentation>The Key Slot is used to transmit a startup frame and a sync frame. The Element holds the slot-id (pKeySlotUsedForStartup, pKeySlotUsedForSync, pKeySlotId)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="flexray:SLOT-ID-TYPE">
<xs:maxInclusive value="1023"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SYNC">
<xs:annotation>
<xs:documentation>The Key Slot is used to transmit a sync frame. The Element holds the slot-id (pKeySlotUsedForStartup, pKeySlotUsedForSync, pKeySlotId)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="flexray:SLOT-ID-TYPE">
<xs:maxInclusive value="1023"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="NONE">
<xs:annotation>
<xs:documentation>The Key Slot is not used to transmit anything. Therefore the Element holds no slot-id (pKeySlotUsedForStartup, pKeySlotUsedForSync, pKeySlotId)</xs:documentation>
</xs:annotation>
<xs:complexType/>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="MAX-DYNAMIC-PAYLOAD-LENGTH">
<xs:annotation>
<xs:documentation>Maximum payload length of a dynamic frame in 16bit WORDS (pPayloadLengthDynMax)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="127"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="CLUSTER-DRIFT-DAMPING">
<xs:annotation>
<xs:documentation>Local cluster drift damping factor used for rate correction. Unit:µT (pClusterDriftDamping)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="20"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DECODING-CORRECTION">
<xs:annotation>
<xs:documentation>Value used by the receiver to calculate the difference between primary time reference point and secondary time reference point. Unit: µT (pDecodingCorrection)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="14"/>
<xs:maxInclusive value="143"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LISTEN-TIMEOUT" minOccurs="0">
<xs:annotation>
<xs:documentation>Upper limit for the start up listen timeout and wake up listen timeout. pdListenTimeout[µT] = 2 * (pMicroPerCycle[µT] + pdMaxDrift[µT]). Unit:µT (pdListenTimeout)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="1284"/>
<xs:maxInclusive value="1283846"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MAX-DRIFT">
<xs:annotation>
<xs:documentation>Maximum drift offset between two nodes that operate with unsynchronized clocks over one communication cycle. Unit: µT (pdMaxDrift)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="1923"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="EXTERN-OFFSET-CORRECTION" default="0" minOccurs="0">
<xs:annotation>
<xs:documentation>Number of microticks added or subtracted to the NIT to carry out a host-requested external offset correction. (pExternOffsetCorrection)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="7"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="EXTERN-RATE-CORRECTION" default="0" minOccurs="0">
<xs:annotation>
<xs:documentation>Number of microticks added or subtracted to the cycle to carry out a host-requested external rate correction. (pExternRateCorrection)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="7"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="LATEST-TX">
<xs:annotation>
<xs:documentation>Number of the last minislot in which a frame transmission can start in the dynamic segment. Unit:minislot (pLatestTx)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="7981"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MICRO-PER-CYCLE">
<xs:annotation>
<xs:documentation>Nominal number of microticks in the communication cycle of the local node. If nodes have different microtick durations this number will differ from node to node. (pMicroPerCycle)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:int">
<xs:minInclusive value="640"/>
<xs:maxInclusive value="640000"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OFFSET-CORRECTION-OUT">
<xs:annotation>
<xs:documentation>Magnitude of the maximum permissible offset correction value. Unit:microtick (pOffsetCorrectionOut)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="5"/>
<xs:maxInclusive value="15266"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="RATE-CORRECTION-OUT">
<xs:annotation>
<xs:documentation>Magnitude of the maximum permissible rate correction value. Unit:µT (pRateCorrectionOut)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="1923"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SAMPLES-PER-MICROTICK" minOccurs="0">
<xs:annotation>
<xs:documentation>Number of samples per microtick (Shall not be part of the conformance test due to implementation dependency). pSamplesPerMicrotick = pdMicrotick / gdSampleClockPeriod = pdMicrotick / (gdBit / cSamplesPerBit) = 8 * pdMicrotick / gdBit; (pSamplesPerMicrotick)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="4"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DELAY-COMPENSATION-A">
<xs:annotation>
<xs:documentation>Value used to compensate for reception delays on channel A. This covers assumed propagation delay up to cPropagationDelayMax for microticks in the range of 0.0125 µs to 0.05 µs. In practice, the minimum of the propagation delays of all sync nodes should be applied. Unit:microticks Unit:µT (pDelayCompensation[A])</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="200"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="DELAY-COMPENSATION-B">
<xs:annotation>
<xs:documentation>Value used to compensate for reception delays on channel B. This covers assumed propagation delay up to cPropagationDelayMax for microticks in the range of 0.0125 µs to 0.05 µs. In practice, the minimum of the propagation delays of all sync nodes should be applied. Unit:microticks Unit:µT (pDelayCompensation[B])</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="200"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="WAKE-UP-PATTERN">
<xs:annotation>
<xs:documentation>Number of repetitions of the wakeup symbol that are combined to form a wakeup pattern when the node enters the POC:wakeup send state. (pWakeupPattern)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="63"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ALLOW-HALT-DUE-TO-CLOCK" type="xs:boolean">
<xs:annotation>
<xs:documentation>Boolean flag that controls the transition to the POC:halt state due to a clock synchronization errors If set to true, the CC is allowed to transition to POC:halt. If set to false, the CC will not transition to the POC:halt state but will enter or remain in the POC:normal passive state (self healing would still be possible). (pAllowHaltDueToClock)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ALLOW-PASSIVE-TO-ACTIVE" default="0" minOccurs="0">
<xs:annotation>
<xs:documentation>Number of consecutive even/odd cycle pairs that must have valid clock correction terms before the CC will be allowed to transition from the POC:normal passive state to POC:normal active state. If set to 0, the CC is not allowed to transition from POC:normal passive to POC:normal active. (pAllowPassiveToActive)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="31"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ACCEPTED-STARTUP-RANGE">
<xs:annotation>
<xs:documentation>Expanded range of measured clock deviation allowed for startup frames during integration. Unit:µT (pdAcceptedStartupRange)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="1875"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MACRO-INITIAL-OFFSET-A">
<xs:annotation>
<xs:documentation>Integer number of macroticks between the static slot boundary and the closest macrotick boundary of the secondary time reference point based on the nominal macrotick duration. (pMacroInitialOffset)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="72"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MACRO-INITIAL-OFFSET-B">
<xs:annotation>
<xs:documentation>Integer number of macroticks between the static slot boundary and the closest macrotick boundary of the secondary time reference point based on the nominal macrotick duration. (pMacroInitialOffset)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="2"/>
<xs:maxInclusive value="72"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MICRO-INITIAL-OFFSET-A" minOccurs="0">
<xs:annotation>
<xs:documentation>Number of microticks between the closest macrotick boundary described by gMacroInitialOffset and the secondary time reference point. The parameter depends on pDelayCompensation[x] and therefor it has to be set independently for each channel. (pMicroInitialOffset[A])</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="240"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MICRO-INITIAL-OFFSET-B" minOccurs="0">
<xs:annotation>
<xs:documentation>Number of microticks between the closest macrotick boundary described by gMacroInitialOffset and the secondary time reference point. The parameter depends on pDelayCompensation[x] and therefor it has to be set independently for each channel. (pMicroInitialOffset[B])</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:short">
<xs:minInclusive value="0"/>
<xs:maxInclusive value="240"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="SINGLE-SLOT-ENABLED" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Flag indicating whether or not the node shall enter single slot mode following startup. (pSingleSlotEnabled)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:choice>
<xs:element name="MICROTICK">
<xs:annotation>
<xs:documentation>Duration of a microtick (Shall not be part of the conformance test due to implementation dependency). pSamplesPerMicrotick * gdSampleClockPeriod Unit:µs (pdMicrotick)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:enumeration value="0.0125"/>
<xs:enumeration value="0.025"/>
<xs:enumeration value="0.05"/>
<xs:enumeration value="0.1"/>
<xs:enumeration value="0.2"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MICRO-PER-MACRO-NOM">
<xs:annotation>
<xs:documentation>Number of microticks per nominal macrotick that all implementations must support. (pMicroPerMacroNom)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="20"/>
<xs:maxInclusive value="240"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:choice>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SIGNAL-GROUP-TYPE">
<xs:complexContent>
<xs:extension base="fx:SIGNAL-GROUP-TYPE">
<xs:sequence>
<xs:element name="MULTIPLEXED" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Signal group can be multiplexed</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CHANNEL-TYPE">
<xs:complexContent>
<xs:extension base="fx:CHANNEL-TYPE">
<xs:sequence>
<xs:element name="FLEXRAY-CHANNEL-NAME">
<xs:annotation>
<xs:documentation>Name of the channel.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="A"/>
<xs:enumeration value="B"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CONNECTOR-TYPE">
<xs:complexContent>
<xs:extension base="fx:CONNECTOR-TYPE">
<xs:sequence>
<xs:element name="WAKE-UP-CHANNEL" type="xs:boolean">
<xs:annotation>
<xs:documentation>Referenced channel used by the node to send a wakeup pattern. (pWakeupChannel)</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PORT-REQ-TYPE">
<xs:complexContent>
<xs:extension base="fx:PORT-REQ-TYPE">
<xs:sequence>
<xs:element name="CHANNEL-REFS">
<xs:annotation>
<xs:documentation>The channel(s) on which the signal shall be sent.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="fx:CHANNEL-REF" maxOccurs="2"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="SLOT-ID-TYPE">
<xs:restriction base="fx:SLOT-ID-TYPE">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="2047"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="PROTOCOL-TYPE">
<xs:annotation>
<xs:documentation>The FlexRay-specific restriction of the common PROTOCOL-TYPE</xs:documentation>
</xs:annotation>
<xs:restriction base="fx:PROTOCOL-TYPE">
<xs:enumeration value="FlexRay"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>