<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XML Spy v4.0 U (http://www.xmlspy.com) by User BCBSMN (Blue Cross Blue Shiel of MN) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<!-- Document Root Element -->
	<xs:element name="providerMapSet">
		<xs:complexType>
			<xs:sequence>
				<xs:group ref="providerMapSetGroup"/>
				<xs:element ref="providerMap" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="transactionFormatId" use="required" fixed="ENUFv1.1"/>
		</xs:complexType>
	</xs:element>
	<!-- Provider Data Group -->
	<xs:group name="providerMapSetGroup">
		<xs:sequence>
			<xs:element ref="createDT"/>
			<xs:element ref="sendingOrgNm"/>
			<xs:element ref="sendingOrgTaxID"/>
			<xs:element ref="recipientType"/>
			<xs:element ref="recipientNm"/>
			<xs:element ref="contactFirstNm"/>
			<xs:element ref="contactLastNm"/>
			<xs:element ref="contactPhoneNbr"/>
			<xs:element ref="contactEmail" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<!-- Practitioner Data Group -->
	<xs:group name="providerMapGroup">
		<xs:sequence>
			<xs:element ref="firstNm"/>
			<xs:element ref="lastNm"/>
			<xs:element ref="midInit" minOccurs="0"/>
			<xs:element ref="credential" minOccurs="0"/>
			<xs:element ref="taxId" minOccurs="0"/>
			<xs:element ref="deaNbr" minOccurs="0"/>
			<xs:element ref="genderCd"/>
			<xs:element ref="DOB"/>
			<xs:element ref="stateLicenseNbr" minOccurs="0"/>
			<xs:element ref="issuingState" minOccurs="0"/>
			<xs:element ref="npiNbr"/>
			<xs:element ref="proprietaryID" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="UPIN" minOccurs="0"/>
		</xs:sequence>
	</xs:group>
	<!-- Elements with built-in and simple types-->
	<xs:element name="createDT" type="datetimeType"/>
	<xs:element name="sendingOrgNm" type="string50Type"/>
	<xs:element name="sendingOrgTaxID" type="long9Type"/>
	<xs:element name="recipientNm" type="string50Type"/>
	<xs:element name="recipientType" type="recipientTypeEnum"/>
	<xs:element name="contactFirstNm" type="string35Type"/>
	<xs:element name="contactLastNm" type="string50Type"/>
	<xs:element name="contactPhoneNbr" type="long10Type"/>
	<xs:element name="contactEmail" type="string50Type"/>
	<xs:element name="firstNm" type="string35Type"/>
	<xs:element name="lastNm" type="string50Type"/>
	<xs:element name="midInit" type="string1Type"/>
	<xs:element name="credential" type="string35Type"/>
	<xs:element name="deaNbr" type="deaNbrType"/>
	<xs:element name="genderCd" type="genderEnum"/>
	<xs:element name="DOB" type="dateType"/>
	<xs:element name="stateLicenseNbr" type="string35Type"/>
	<xs:element name="issuingState" type="stateType"/>
	<xs:element name="npiNbr" type="npiType"/>
	<xs:element name="proprietaryID" type="string13Type"/>
	<xs:element name="UPIN" type="string6Type"/>
	<!-- Elements with complex types-->
	<xs:element name="providerMap">
		<xs:complexType>
			<xs:sequence>
				<xs:group ref="providerMapGroup"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="taxId">
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="long9Type">
					<xs:attribute name="taxIdType" type="taxIdTypeEnum" use="required"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>
	<!-- Simple Types -->
	<!-- Enum Types -->
	<xs:simpleType name="taxIdTypeEnum">
		<xs:restriction base="xs:string">
			<xs:enumeration value="SSN"/>
			<xs:enumeration value="ITIN"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="genderEnum">
		<xs:restriction base="xs:string">
			<xs:enumeration value="U"/>
			<xs:enumeration value="M"/>
			<xs:enumeration value="F"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="recipientTypeEnum">
		<xs:restriction base="xs:string">
			<xs:enumeration value="Payer"/>
			<xs:enumeration value="PAYER"/>
			<xs:enumeration value="Provider"/>
			<xs:enumeration value="PROVIDER"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- Restriction Simple Types -->
	<xs:simpleType name="string1Type">
		<xs:restriction base="xs:string">
			<xs:maxLength value="1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="stateType">
		<xs:restriction base="xs:string">
			<xs:pattern value="[A-z]{2}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="string6Type">
		<xs:restriction base="xs:string">
			<xs:maxLength value="6"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="dateType">
		<xs:restriction base="xs:long">
			<xs:pattern value="[0-9]{8}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="datetimeType">
		<xs:restriction base="xs:long">
			<xs:pattern value="[0-9]{14}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="deaNbrType">
		<xs:restriction base="xs:string">
			<xs:maxLength value="9"/>
			<xs:pattern value="[A-Za-z]{1}[A-Za-z]{1}[0-9]{7}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="string13Type">
		<xs:restriction base="xs:string">
			<xs:maxLength value="13"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="string35Type">
		<xs:restriction base="xs:string">
			<xs:maxLength value="35"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="string50Type">
		<xs:restriction base="xs:string">
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="long9Type">
		<xs:restriction base="xs:long">
			<xs:pattern value="[0-9]{9}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="long10Type">
		<xs:restriction base="xs:long">
			<xs:pattern value="[0-9]{10}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="npiType">
		<xs:restriction base="xs:long">
			<xs:pattern value="[1-4]{1}[0-9]{9}"/>
		</xs:restriction>
	</xs:simpleType>
</xs:schema>

