<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.asam.net/xml/fbx/nm/frnm/asr30" xmlns:fx="http://www.asam.net/xml/fbx" xmlns:flexray="http://www.asam.net/xml/fbx/flexray" xmlns:ho="http://www.asam.net/xml" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:asr30frnm="http://www.asam.net/xml/fbx/nm/frnm/asr30" xmlns:asr30nm="http://www.asam.net/xml/fbx/nm/asr30" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0.0">
	<xs:import namespace="http://www.asam.net/xml/fbx/flexray" schemaLocation="fibex4flexray.xsd"/>
	<xs:import namespace="http://www.asam.net/xml/fbx/nm/asr30" schemaLocation="fibex4nmASR30.xsd"/>
	<xs:complexType name="NM-CLUSTER-TYPE">
		<xs:annotation>
			<xs:documentation>All ASR Nm 3.0 configuration elements that must be unique for all NM-NODEs of a cluster (FrNm specific etxensions)</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="asr30nm:NM-CLUSTER-TYPE">
				<xs:sequence>
					<xs:element name="DATA-ENABLED" type="xs:boolean">
						<xs:annotation>
							<xs:documentation>Switch to enable the separated sending of NM-Data. </xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="REPETITION-CYCLE" type="flexray:CYCLE-REPETITION-TYPE">
						<xs:annotation>
							<xs:documentation>Number of FlexRay Communication Cycles used to repeat the transmission of the Nm vote PDUs of all FlexRay NM-ECUs  of this FRNM-CLUSTER. - This value must be an integral multiple of VOTING-CYCLE.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="VOTING-CYCLE" type="flexray:CYCLE-REPETITION-TYPE">
						<xs:annotation>
							<xs:documentation>Number of FlexRay CommunicationCycles needed to transmit the Nm vote of PDUs of all FlexRay NM-ECUs of this FRNM-CLUSTER.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="DATA-CYCLE" type="flexray:CYCLE-REPETITION-TYPE">
						<xs:annotation>
							<xs:documentation>Number of FlexRay Communication Cycles needed to transmit the NM Data PDUs of all FlexRay NM-ECUs of this FRNM-CLUSTER.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="READY-SLEEP-COUNT" type="xs:unsignedShort">
						<xs:annotation>
							<xs:documentation>Numbers of repetitions in the ready sleep state before NM switches to bus sleep mode. On a value of "1", the NM-State Machine will leave the Ready Sleep State after one NM Repetition Cycle with no "keep awake" votes. </xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="NM-CLUSTER-COUPLING-TYPE">
		<xs:annotation>
			<xs:documentation>All ASR Nm 3.0 configuration element that couples different NM clusters and contains parameters that must be identical in all of them (FrNm specific extensions)</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="asr30nm:NM-CLUSTER-COUPLING-TYPE">
				<xs:sequence>
					<xs:element name="SCHEDULE-VARIANT" type="asr30frnm:SCHEDULE-VARIANT"/>
					<xs:element name="NM-DATA-DISABLED" type="xs:boolean">
						<xs:annotation>
							<xs:documentation>Pre-processor switch for disabling the transmission of NM-Data. </xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="REPEAT-MESSAGE-BIT-ENABLED" type="xs:boolean">
						<xs:annotation>
							<xs:documentation>Pre-processor switch for enabling the processing and the transmission of the repeat message bit. - Only valid if CONTROL-BIT-VECTOR-ENABLED ist set to TRUE.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="CONTROL-BIT-VECTOR-ENABLED" type="xs:boolean">
						<xs:annotation>
							<xs:documentation>Pre-processor switch for enabling control bit vector support.</xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:simpleType name="SCHEDULE-VARIANT">
		<xs:annotation>
			<xs:documentation>FrNm schedule variant according to FrNm SWS.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:token">
			<xs:enumeration value="SCHEDULE_VARIANT_1">
				<xs:annotation>
					<xs:documentation>NM-Vote and NM Data transmitted within one PDU in static segment. The NM-Vote has to be realized as separate bit within the PDU.
</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="SCHEDULE_VARIANT_2">
				<xs:annotation>
					<xs:documentation>NM-Vote and NM-Data transmitted within one PDU in dynamic segment. The presence (or non-presence) of the PDU corresponds to the NM-Vote
</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="SCHEDULE_VARIANT_3">
				<xs:annotation>
					<xs:documentation>NM-Vote and NM-Data are transmitted in the static segment in separate PDUs. - This alternative is not recommended => Alternative 1 should be used instead.
</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="SCHEDULE_VARIANT_4">
				<xs:annotation>
					<xs:documentation>NM-Vote transmitted in static and NM-Data transmitted in dynamic segment.</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="SCHEDULE_VARIANT_5">
				<xs:annotation>
					<xs:documentation>NM-Vote is transmitted in dynamic and NM-Data is transmitted in static segment. - This alternative is not recommended => Variants 2 or 6 should be used instead.
</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="SCHEDULE_VARIANT_6">
				<xs:annotation>
					<xs:documentation>NM-Vote and NM-Data are transmitted in dynamic segment in separate PDUs.</xs:documentation>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="SCHEDULE_VARIANT_7">
				<xs:annotation>
					<xs:documentation>NM-Vote and a copy of the CBV are transmitted in the static segment (using the FlexRay NM Vector support) and NM-Data is transmitted in the dynamic segment </xs:documentation>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="NM-PDU-USAGE-TYPE">
		<xs:annotation>
			<xs:documentation>ASR Nm 3.0 reference to the used PDU-TRIGGERINGs  (FrNm specific extensions)</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="asr30nm:NM-PDU-USAGE-TYPE">
				<xs:sequence>
					<xs:element name="CONTAINS-VOTE" type="xs:boolean">
						<xs:annotation>
							<xs:documentation>Refrenced PDU-TRIGGERING contains vote information.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="CONTAINS-DATA" type="xs:boolean">
						<xs:annotation>
							<xs:documentation>Refrenced PDU-TRIGGERING contains data.</xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="NM-ECU-EXTENSION-TYPE">
		<xs:annotation>
			<xs:documentation>ASR FrNm 3.0 ECU extensions</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="asr30nm:NM-ECU-EXTENSION-TYPE">
				<xs:sequence>
					<xs:element name="HW-VOTE-ENABLED" type="xs:boolean"/>
					<xs:element name="MAIN-FUNCTION-ACROSS-FR-CYCLE" type="xs:boolean">
						<xs:annotation>
							<xs:documentation>Parameter describing if the execution of the FrNm_Main function crosses theFlexRay cycle boundary or not.</xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
</xs:schema>
