<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2008 rel. 2 sp1 (http://www.altova.com) by Tim Buchholz (Minnesota Judicial Branch) -->
<!--
	Modification History 
	Date					Version	Rev			Change
	07/15/2008		3:1			1				Cocument Creation
	01/28/2009		3:1			2			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" targetNamespace="http://www.courts.state.mn.us/CourtXML/3" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2">
	<xs:include schemaLocation="CourtXML_3.xsd"/>
	<xs:attributeGroup name="PartyNotificationMessageAttributes">
		<xs:attribute name="schemaVersion" 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:2</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:minLength value="1"/>
				</xs:restriction>
			</xs:simpleType>
		</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="NotificationPartyType">
		<xs:sequence>
			<xs:element name="PartyName" type="PartyNameType" maxOccurs="unbounded"/>
			<xs:element name="PartyAddress" type="PartyAddressType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="PartyTelephoneNumber" type="TelephoneNumberType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="PartyEmail" type="xs:anyURI" minOccurs="0"/>
			<xs:element name="Group" type="GroupType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>A user defined construct to permit the assignment of a Case or Party to a group.  There can be multiple Group Types, e.g., Family Unit, Treatment Program.  Within a Group Type there is a unique Group Identifier for each specified group in the GroupType.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PersonBirthDate" minOccurs="0" maxOccurs="unbounded">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:date">
							<xs:attribute name="currentBirthdate" type="xs:boolean">
								<xs:annotation>
									<xs:documentation>Indicates whether a given birthdate instance is considered the accepted one.</xs:documentation>
								</xs:annotation>
							</xs:attribute>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="PersonBirthLocation" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The subset of JXDM elements the courts use to record a person's location of birth.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="LocationAddress" type="LocationAddressType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="PartyDeathDate" type="xs:date" minOccurs="0"/>
			<xs:element name="PersonCitizenshipText" type="CountryTypeCodeTextType" minOccurs="0"/>
			<xs:element name="MaritalStatusText" type="MaritalStatusCodeTextType" minOccurs="0"/>
			<xs:element name="ForeignLanguageText" type="ForeignLanguageTextType" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="InterpreterNeededIndicator" type="xs:boolean" minOccurs="0"/>
			<xs:element name="CurrentEmployerIdentifier" minOccurs="0">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute name="partyKey" type="xs:positiveInteger" use="required"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="CurrentSchoolIdentifier" minOccurs="0">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute name="partyKey" type="xs:positiveInteger" use="required"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="PersonAssignedIDDetails" type="PersonAssignedIDDetailsType" minOccurs="0"/>
			<xs:element name="PersonPhysicalDetails" type="PersonPhysicalDetailsType" minOccurs="0"/>
			<xs:element name="AssociatedCase" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Identifying details about cases to which this party has a relationship</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="CourtFileNumber" type="CourtFileNumberType"/>
						<xs:element name="CaseLocationText" type="CourtLocationCodeTextType"/>
						<xs:element name="BaseCaseTypeText" type="BaseCaseTypeTextType"/>
						<xs:element name="CaseCategoryText" type="CaseCategoryCodeTextType"/>
						<xs:element name="CaseTypeText" type="CaseTypeCodeTextType"/>
						<xs:element name="CurrentCaseStatusText" type="CaseStatusTypeCodeTextType"/>
						<xs:element name="PartyCaseAssociationText" type="ExtendedPartyConnectionTypeCodeTextType">
							<xs:annotation>
								<xs:documentation>Optional since this type is sometimes used for parties outside of the context of a case.</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
					<xs:attribute name="caseKey" type="xs:positiveInteger" use="required"/>
				</xs:complexType>
			</xs:element>
			<xs:element name="AssociatedWarrant" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Information about warrants that are associated with this party. </xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="WarrantNumber" type="WarrantNumberType">
							<xs:annotation>
								<xs:documentation>Number that identifies the warrant.  Usually the case file number + a sequential number.  Can be either manually or auto-assigned.</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="CourtName" type="CourtLocationCodeTextType"/>
						<xs:element name="CurrentWarrantStatus">
							<xs:annotation>
								<xs:documentation>The status indicates if the warrant is still active or has been quashed, and the physical locatiion of the warrant. </xs:documentation>
							</xs:annotation>
							<xs:complexType>
								<xs:sequence>
									<xs:element name="WarrantStatusTypeText" type="WarrantStatusTypeCodeTextType">
										<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">
										<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:element name="CourtORI" type="JudicialAgencyORIIDType">
										<xs:annotation>
											<xs:documentation>Court that issued the Status</xs:documentation>
										</xs:annotation>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
					<xs:attribute name="warrantKey" type="xs:positiveInteger" use="required"/>
				</xs:complexType>
			</xs:element>
			<xs:element name="AssociatedBond" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Information about bonds that are associated with this party. </xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="BondNumber" type="BondNumberType" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Number assigned to the bond by the court. </xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="CurrentBondStatus">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="BondStatusDate" type="xs:date">
										<xs:annotation>
											<xs:documentation>Date the status became effective</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="BondStatusTypeText" type="BondStatusTypeCodeTextType"/>
									<xs:element name="BondStatusLocationText" type="BondStatusLocationCodeTextType">
										<xs:annotation>
											<xs:documentation>Physical location of the bond in relation to this status.</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="BondStatusComment" type="CommentType" minOccurs="0"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
					<xs:attribute name="bondKey" type="xs:positiveInteger" use="required"/>
				</xs:complexType>
			</xs:element>
			<xs:element name="AssociatedCitation" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Identifying details about citations to which this party has a relationship</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="CitationNumber" type="CitationNumberType"/>
						<xs:element name="IssuingAgencyORI" type="IssuingAgencyORIType">
							<xs:annotation>
								<xs:documentation>ORI of Agency Issuing the Citation</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
					<xs:attribute name="citationKey" type="xs:positiveInteger" use="required"/>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="partyKey" type="xs:positiveInteger"/>
	</xs:complexType>
	<xs:element name="PartyNotification">
		<xs:complexType>
			<xs:choice>
				<xs:element name="PartyMergeNotification">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="TriggeredDateTime" type="xs:dateTime"/>
							<xs:element name="MergedParty" type="NotificationPartyType"/>
						</xs:sequence>
						<xs:attribute name="mergePartyKeyOne" type="xs:positiveInteger" use="required">
							<xs:annotation>
								<xs:documentation>This is the partyKey of the Party into which the party with mergePartyKeyTwo has been merged.  When party records are merged, the party with this partyKey is the remaining party record.</xs:documentation>
							</xs:annotation>
						</xs:attribute>
						<xs:attribute name="mergePartyKeyTwo" type="xs:positiveInteger" use="required">
							<xs:annotation>
								<xs:documentation>This is the partyKey of the party that was merged into the party with mergePartyKeyOne to produce the merged party.  The party with this partyKey no longer exists as a separate party record. </xs:documentation>
							</xs:annotation>
						</xs:attribute>
					</xs:complexType>
				</xs:element>
				<xs:element name="PartyUnmergeNotification">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="TriggeredDateTime" type="xs:dateTime"/>
							<xs:element name="UnmergePartyOne" type="NotificationPartyType">
								<xs:annotation>
									<xs:documentation>This Party is the contained both party records prior to the Unmerge transaction. </xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="UnmergePartyTwo" type="NotificationPartyType">
								<xs:annotation>
									<xs:documentation>This Party was unmerged out of the combined party.</xs:documentation>
								</xs:annotation>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:choice>
			<xs:attributeGroup ref="PartyNotificationMessageAttributes"/>
			<xs:attribute name="updateUserAccount" type="UserAccountType" use="required">
				<xs:annotation>
					<xs:documentation>The account name for the user that performed the update that triggered this notification message.</xs:documentation>
				</xs:annotation>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
</xs:schema>
