<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 sp1 (http://www.altova.com) by Tim Buchholz (Minnesota Judicial Branch) -->
<!--
 Copyright © 2007, 2008, 2009 by the State of Minnesota
	State Court Administrator’s Office
	All Rights Reserved
-->
<!-- Modification History 
	Date				Version	Rev			Change
	9/7/2007		3:1			1				Copied from CriminalComplaintDocument and added warrant
	12/28/2007	3:1			2				Added Indictment to ComplaintTypeText enumeration
	01/25/2008	3:1			3				Added elements for Pull/Release processing.
														Added Sealed and Confidential flags.
	02/01/2008	3:1			4				Added elements for pulling responses.
														Added submittingUser attribute.
	01/28/2009	3:1			5				Removed Pull/Release elements since they only apply to submissions through web services and are defined in the WSDL separate from the schema.

-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.courts.state.mn.us/CourtXML/3" xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope" targetNamespace="http://www.courts.state.mn.us/CourtXML/3" elementFormDefault="qualified" attributeFormDefault="unqualified" version="5">
	<xs:include schemaLocation="CourtXML_3.xsd"/>
	<xs:attributeGroup name="InitiateMessageAttributes">
		<xs:attribute name="schemaVersion" type="xs:string" use="required">
			<xs:annotation>
				<xs:documentation>Specifies the version of the schema that this message should be validated against.  For this schema the value should be 3:1.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="messageProducedDateTime" type="xs:dateTime">
			<xs:annotation>
				<xs:documentation>Date and time when this message was produced.  This value is included on all outbound messages and not required on inbound messages.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:complexType name="DefendantType">
		<xs:sequence>
			<xs:element name="PartyKey" type="IntegrationIDType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The party integration ID. If provided will skip all other party matching logic and select the party with this id.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PartyName" type="PartyNameBaseType">
				<xs:annotation>
					<xs:documentation>PartyName is the name the case will be filed under.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PartyAlternateName" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>PartyAltenateName allows the filing agency to submit aliases, former names, etc.  These names will be searchable on MNCIS.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="PartyNameBaseType">
							<xs:attribute name="nameTypeText" type="CaseNameTypeCodeType" use="required">
								<xs:annotation>
									<xs:documentation>AKA denotes an Alias</xs:documentation>
								</xs:annotation>
							</xs:attribute>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="PartyAddress" type="PartyAddressBaseType" minOccurs="0"/>
			<xs:element name="PartyTelephoneNumber" type="TelephoneNumberBaseType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="PartyEmail" type="PartyEmailType" minOccurs="0"/>
			<xs:element name="PersonBirthDate" type="xs:date" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="PersonCitizenshipText" type="CountryTypeCodeTextType" nillable="true" minOccurs="0"/>
			<xs:element name="MaritalStatusText" type="MaritalStatusCodeTextType" nillable="true" minOccurs="0"/>
			<xs:element name="ForeignLanguageText" type="ForeignLanguageTextType" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="InterpreterNeededIndicator" type="xs:boolean" minOccurs="0"/>
			<xs:element name="PersonAssignedIDDetails" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="PersonID" type="PersonIDType" minOccurs="0"/>
						<xs:element name="PersonSSNID" minOccurs="0" maxOccurs="unbounded">
							<xs:complexType>
								<xs:complexContent>
									<xs:extension base="PersonSSNIDType"/>
								</xs:complexContent>
							</xs:complexType>
						</xs:element>
						<xs:element name="PersonDriverLicenseID" minOccurs="0" maxOccurs="unbounded">
							<xs:complexType>
								<xs:complexContent>
									<xs:extension base="PersonDriverLicenseIDType"/>
								</xs:complexContent>
							</xs:complexType>
						</xs:element>
						<xs:element name="PersonFBIID" minOccurs="0" maxOccurs="unbounded">
							<xs:annotation>
								<xs:documentation>A number issued by the FBI&apos;s Automated Fingerprint Identification System (AFIS) based on submitted fingerprints.</xs:documentation>
							</xs:annotation>
							<xs:complexType>
								<xs:complexContent>
									<xs:extension base="PersonFBIIDType"/>
								</xs:complexContent>
							</xs:complexType>
						</xs:element>
						<xs:element name="PersonStateID" minOccurs="0" maxOccurs="unbounded">
							<xs:annotation>
								<xs:documentation>A number issued by a state Automated Fingerprint Identification System (AFIS) based on submitted fingerprints. Sometimes referred to as a State ID number or a SID.</xs:documentation>
							</xs:annotation>
							<xs:complexType>
								<xs:complexContent>
									<xs:extension base="PersonStateIDType"/>
								</xs:complexContent>
							</xs:complexType>
						</xs:element>
						<xs:element name="PersonOtherID" type="PersonOtherIDType" minOccurs="0" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="PersonPhysicalDetails" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="PersonHeightMeasure" type="PersonHeightMeasureType" minOccurs="0"/>
						<xs:element name="PersonWeightMeasure" type="PersonWeightMeasureType" minOccurs="0"/>
						<xs:element name="PersonEyeColorText" type="EyeColorTypeCodeTextType" nillable="true" minOccurs="0"/>
						<xs:element name="PersonHairColorText" type="HairColorTypeCodeTextType" nillable="true" minOccurs="0"/>
						<xs:element name="PersonSexText" type="GenderTypeCodeTextType" nillable="true" minOccurs="0"/>
						<xs:element name="PersonEthnicity" nillable="true" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="LawEnforcementObservedEthnicityText" type="EthnicTypeCodeTextType" nillable="true" minOccurs="0"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="PersonRace" nillable="true" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="LawEnforcementObservedRaceText" type="RaceTypeCodeTextType" nillable="true" minOccurs="0" maxOccurs="unbounded">
										<xs:annotation>
											<xs:documentation>MNCIS stores this race data with the case</xs:documentation>
										</xs:annotation>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="PersonPhysicalFeature" type="PersonPhysicalFeatureType" minOccurs="0" maxOccurs="unbounded"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="InCustodyIndicator" type="xs:boolean" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<!--Below are the elements that define the Complaint/TabCharge messages.-->
	<xs:element name="InitiateCriminalCase">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="EFileID" type="EFileIDType">
					<xs:annotation>
						<xs:documentation>Value which when combined with the SubmittingAgencyORI uniquely identifies a specific instance of an efiling. If two documents share the same values, filings subsequent to the intial filing will be rejected as duplicate filings.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="SubmittingAgencyORI" type="SubmittingAgencyORIType">
					<xs:annotation>
						<xs:documentation>Agency responsible for the submitting the complaint.   In most instances this will be the same as the Filing/ProsecutingAgencyORI.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="Filing">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="ProsecutingAgencyORI" type="ProsecutingAgencyORIType">
								<xs:annotation>
									<xs:documentation>Agency responsible for filing and prosecuting the case.</xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="ComplaintTypeText">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:enumeration value="Complaint--Summons"/>
										<xs:enumeration value="Complaint--Warrant"/>
										<xs:enumeration value="Complaint--Order For Detention"/>
										<xs:enumeration value="Extradition"/>
										<xs:enumeration value="Indictment"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CourtJurisdictionORI" type="CourtJurisdictionORIType"/>
							<xs:element name="OtherAgencyNumber" type="OtherAgencyNumberType" minOccurs="0" maxOccurs="unbounded"/>
							<xs:element name="FingerPrintedIndicator" type="xs:boolean">
								<xs:annotation>
									<xs:documentation>If true, indicates the defendant has been fingerprinted for this case. </xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="FingerprintsNeededIndicator" type="xs:boolean">
								<xs:annotation>
									<xs:documentation>If true, indicates fingerprinting is required. </xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:choice minOccurs="0">
								<xs:element name="CaseIsConfidential" type="xs:boolean"/>
								<xs:element name="CaseIsSealed" type="xs:boolean"/>
							</xs:choice>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="Defendant" type="DefendantType"/>
				<xs:element name="Charge" type="ChargeInType" maxOccurs="unbounded"/>
				<xs:element name="Prosecutor" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Used to assign a specific attorney as the prosecuting attorney.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="AttorneyBarNumber" type="AttorneyBarNumberType"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="ProbableCauseText" type="CommentType" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Currently this does not get stored in MNCIS.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="Warrant" type="WarrantInType" minOccurs="0"/>
			</xs:sequence>
			<xs:attributeGroup ref="InitiateMessageAttributes"/>
			<xs:attribute name="submittingUser">
				<xs:annotation>
					<xs:documentation>User from submitting system.  Optionally can be used for auditing and troubleshooting purposes.</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="1"/>
						<xs:maxLength value="60"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<xs:element name="InitiateCriminalCaseResponse">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="EFileID" type="EFileIDType">
					<xs:annotation>
						<xs:documentation>EFileID submitted with complaint or tab charge</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="SubmittingAgencyORI" type="SubmittingAgencyORIType">
					<xs:annotation>
						<xs:documentation>The identifier for the agency that submitted the complaint or tab charge. </xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="OtherAgencyNumber" type="OtherAgencyNumberType" minOccurs="0" maxOccurs="unbounded">
					<xs:annotation>
						<xs:documentation>This element will hold case numbers issued by other agencies, e.g., Prosecutor File Number or Jail Booking Number.   These will be included if they were submitted with the original complaint/tabcharge message.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:choice>
					<xs:element name="AcceptedByCourt">
						<xs:complexType>
							<xs:sequence>
								<xs:element name="CourtFileNumber" type="CourtFileNumberType"/>
								<xs:element name="CaseFiledDate" type="xs:date"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element name="PendingCourtReview">
						<xs:complexType>
							<xs:sequence>
								<xs:element name="ReasonText">
									<xs:simpleType>
										<xs:restriction base="xs:string">
											<xs:minLength value="1"/>
											<xs:maxLength value="100"/>
										</xs:restriction>
									</xs:simpleType>
								</xs:element>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element name="Rejected">
						<xs:complexType>
							<xs:sequence>
								<xs:element name="ReasonText">
									<xs:simpleType>
										<xs:restriction base="xs:string">
											<xs:minLength value="1"/>
											<xs:maxLength value="100"/>
										</xs:restriction>
									</xs:simpleType>
								</xs:element>
								<xs:element name="CommentText" type="xs:string" minOccurs="0"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
				</xs:choice>
			</xs:sequence>
			<xs:attributeGroup ref="InitiateMessageAttributes"/>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="WarrantStatusInType">
		<xs:annotation>
			<xs:documentation>The status indicates if the warrant is still active or has been quashed, and the physical locatiion of the warrant.  There is one current status 0-many past status'</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="WarrantStatusTypeText" type="WarrantStatusTypeCodeTextType" nillable="true">
				<xs:annotation>
					<xs:documentation>Text description of the status.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="WarrantStatusDate" type="xs:date">
				<xs:annotation>
					<xs:documentation>Date the status took effect.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="WarrantStatusTime" type="xs:time" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Time the status took effect.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="WarrantLocation" type="WarrantLocationTypeCodeTextType" nillable="true" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Location of the Physical Copy of the Warrant</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="WarrantStatusComment" type="CommentType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Comment assocated with the warrant status.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="WarrantInType">
		<xs:sequence>
			<xs:element name="IssuingJudge" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The judge who issued the warrant.  </xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="JudgeID" type="JudgeIDType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="ExpirationDate" type="xs:date" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Date the warrant expires.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="WarrantStatus" type="WarrantStatusInType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The status indicates if the warrant is still active or has been quashed, and the physical locatiion of the warrant. If excluded the configured defaults will be used.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:choice>
				<xs:element name="HoldIndicator" type="xs:boolean">
					<xs:annotation>
						<xs:documentation>If true, the defendant must be held in custody and cannot be released on bond or by paying a fine.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="Bond" type="WarrantBondType">
					<xs:annotation>
						<xs:documentation>The amount and type of bond required of the defendant.</xs:documentation>
					</xs:annotation>
				</xs:element>
			</xs:choice>
			<xs:element name="WarrantCondition" type="WarrantConditionType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="WarrantNarrativeText" type="CommentType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Details added by the user that explain the reason for the issuance of the warrant.  These details appear with the text "The defendant has failed to comply with the conditions of ".  There may be other details included on the the warrant that are not included in this xml document.  For the complete probable cause text, see the official signed paper copy of the warrant.   </xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="WarrantNotes" type="WarrantNotesType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Information about why the warrant was issued.  They appear after the word "Other: " under the probable cause section of the signed paper copy of the warrant.  See the signed warrant for the complete cause for the warrant. </xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
