<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:parties="https://www.omg.org/spec/Parties/"
            xmlns:ppmn="https://www.omg.org/spec/PPMN/"
            xmlns:sce="https://www.omg.org/spec/SCE/"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            elementFormDefault="qualified"
            targetNamespace="https://www.omg.org/spec/PPMN/">
   
   <xsd:import namespace="https://www.omg.org/spec/SCE/"
      schemaLocation="SCE.xsd"/>
   <xsd:import namespace="https://www.omg.org/spec/Parties/"
      schemaLocation="Parties-new.xsd"/>
   
<xsd:element name="ElementReference" type="ppmn:tElementReference"/>
   <xsd:complexType name="tElementReference">
      <xsd:attribute name="href" type="xsd:anyURI" use="required"/>
   </xsd:complexType>

<xsd:element name="OccurrenceGraphTransition" type="ppmn:tOccurrenceGraphTransition"/>
   <xsd:complexType name="tOccurrenceGraphTransition">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="target" maxOccurs="unbounded" type="ppmn:tElementReference"/>
               <xsd:element name="source" type="ppmn:tElementReference"/>
               <xsd:element name="transitionRule"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="relationshipKind" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceType" type="ppmn:tOccurrenceType"/>
   <xsd:complexType name="tOccurrenceType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementType">
            <xsd:sequence>
               <xsd:element name="location"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="subChain" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="role"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="rationale" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="locationTypes"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="subjectType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="entityDependency"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingRelationshipType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Occurrence" type="ppmn:tOccurrence"/>
   <xsd:complexType name="tOccurrence">
      <xsd:complexContent>
         <xsd:extension base="sce:tTypedElement">
            <xsd:sequence>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="location" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="subchain" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceDependencies"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="role"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="rationale"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="subOccurrences"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingRelationship"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="predecessor"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="start" use="optional" type="xsd:dateTime"/>
            <xsd:attribute name="end" use="optional" type="xsd:dateTime"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceTypeGraph" type="ppmn:tOccurrenceTypeGraph"/>
   <xsd:complexType name="tOccurrenceTypeGraph">
      <xsd:complexContent>
         <xsd:extension base="sce:tBaseElement">
            <xsd:sequence>
               <xsd:element name="transition"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceGraphTransition"/>
               <xsd:element name="occurrenceNode"
                            maxOccurs="unbounded"
                            type="ppmn:tOccurrenceGraphNode"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceChain" type="ppmn:tOccurrenceChain"/>
   <xsd:complexType name="tOccurrenceChain">
      <xsd:complexContent>
         <xsd:extension base="sce:tTypedElement">
            <xsd:sequence>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceHistory"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="subject"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="interestedParty"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceLink"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceRelationship"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="InterestedParty" type="ppmn:tInterestedParty"/>
   <xsd:complexType name="tInterestedParty">
      <xsd:complexContent>
         <xsd:extension base="parties:tPartyRole">
            <xsd:sequence>
               <xsd:element name="occurrenceChain" type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="interest" use="optional" type="xsd:string"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Rule" type="ppmn:tRule"/>
   <xsd:complexType name="tRule">
      <xsd:sequence/>
   </xsd:complexType>

<xsd:element name="OccurrenceRelationship" type="ppmn:tOccurrenceRelationship"/>
   <xsd:complexType name="tOccurrenceRelationship">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="source" type="ppmn:tElementReference"/>
               <xsd:element name="target" type="ppmn:tElementReference"/>
               <xsd:element name="relationshipKind" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceGraphNode" type="ppmn:tOccurrenceGraphNode"/>
   <xsd:complexType name="tOccurrenceGraphNode">
      <xsd:complexContent>
         <xsd:extension base="sce:tBaseElement">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceBranchNode" type="ppmn:tOccurrenceBranchNode"/>
   <xsd:complexType name="tOccurrenceBranchNode">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceGraphNode">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceChainType" type="ppmn:tOccurrenceChainType"/>
   <xsd:complexType name="tOccurrenceChainType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementType">
            <xsd:sequence>
               <xsd:element name="occurrenceTypeGraph"
                            minOccurs="0"
                            type="ppmn:tOccurrenceTypeGraph"/>
               <xsd:element name="interestedParty"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="subjectType" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceTypeUsageNode" type="ppmn:tOccurrenceTypeUsageNode"/>
   <xsd:complexType name="tOccurrenceTypeUsageNode">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceGraphNode">
            <xsd:sequence>
               <xsd:element name="occurrenceType" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceDependency" type="ppmn:tOccurrenceDependency"/>
   <xsd:complexType name="tOccurrenceDependency">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="target" type="ppmn:tElementReference"/>
               <xsd:element name="source" type="ppmn:tElementReference"/>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="relationshipKind" type="ppmn:tElementReference"/>
               <xsd:element name="kind" type="ppmn:tElementReference"/>
               <xsd:element name="entityRoleDefinition"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="role" use="optional" type="xsd:string"/>
            <xsd:attribute name="time" use="optional" type="xsd:dateTime"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceDependencyType" type="ppmn:tOccurrenceDependencyType"/>
   <xsd:complexType name="tOccurrenceDependencyType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationshipType">
            <xsd:sequence>
               <xsd:element name="target" type="ppmn:tElementReference"/>
               <xsd:element name="source" type="ppmn:tElementReference"/>
               <xsd:element name="kind" type="ppmn:tElementReference"/>
               <xsd:element name="entityRoleDefinition"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="role" use="optional" type="xsd:string"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceRole" type="ppmn:tOccurrenceRole"/>
   <xsd:complexType name="tOccurrenceRole">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="performer" type="ppmn:tElementReference"/>
               <xsd:element name="occurrence" type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceRoleDefinition"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="role" type="xsd:string"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceRoleType" type="ppmn:tOccurrenceRoleType"/>
   <xsd:complexType name="tOccurrenceRoleType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationshipType">
            <xsd:sequence>
               <xsd:element name="performerType" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceType" type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceRoleDefinition"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="role" type="xsd:string"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ActivityOccurrenceType" type="ppmn:tActivityOccurrenceType"/>
   <xsd:complexType name="tActivityOccurrenceType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceType">
            <xsd:sequence>
               <xsd:element name="inputEntityType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="outputEntityType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="activitySpecRef" use="optional" type="xsd:anyURI"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ActivityOccurrence" type="ppmn:tActivityOccurrence"/>
   <xsd:complexType name="tActivityOccurrence">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrence">
            <xsd:sequence>
               <xsd:element name="inputEntity"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="outputEntity"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingEntityRelationship"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="activityInstanceRef" use="optional" type="xsd:anyURI"/>
            <xsd:attribute name="description" use="optional" type="xsd:string"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PPMNRelationshipKind" type="ppmn:tPPMNRelationshipKind"/>
   <xsd:complexType name="tPPMNRelationshipKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tRelationshipKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceDependencyKind" type="ppmn:tOccurrenceDependencyKind"/>
   <xsd:complexType name="tOccurrenceDependencyKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tRelationshipKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceKind" type="ppmn:tOccurrenceKind"/>
   <xsd:complexType name="tOccurrenceKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntityFormat" type="ppmn:tEntityFormat"/>
   <xsd:complexType name="tEntityFormat">
      <xsd:complexContent>
         <xsd:extension base="sce:tKind">
            <xsd:sequence/>
            <xsd:attribute name="formatDefinitionRef" use="optional" type="xsd:anyURI"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntityType" type="ppmn:tEntityType"/>
   <xsd:complexType name="tEntityType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementType">
            <xsd:sequence>
               <xsd:element name="potentialFormat"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="part"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="typeSnapshot"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="typeDefinitionRef" use="optional" type="xsd:anyURI"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Entity" type="ppmn:tEntity"/>
   <xsd:complexType name="tEntity">
      <xsd:complexContent>
         <xsd:extension base="sce:tTypedElement">
            <xsd:sequence>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="format" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="entityLocation" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="snapshot"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="part"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="creationDate" use="optional" type="xsd:dateTime"/>
            <xsd:attribute name="entityURI" use="optional" type="xsd:anyURI"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntitySnapshot" type="ppmn:tEntitySnapshot"/>
   <xsd:complexType name="tEntitySnapshot">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tEntity">
            <xsd:sequence>
               <xsd:element name="entity" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntityRelationship" type="ppmn:tEntityRelationship"/>
   <xsd:complexType name="tEntityRelationship">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="target" type="ppmn:tElementReference"/>
               <xsd:element name="source" type="ppmn:tElementReference"/>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="occurrence" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntitySnapshotType" type="ppmn:tEntitySnapshotType"/>
   <xsd:complexType name="tEntitySnapshotType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tEntityType">
            <xsd:sequence>
               <xsd:element name="entityType" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntityRelationshipType" type="ppmn:tEntityRelationshipType"/>
   <xsd:complexType name="tEntityRelationshipType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationshipType">
            <xsd:sequence>
               <xsd:element name="target" type="ppmn:tElementReference"/>
               <xsd:element name="source" type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="DerivedFrom" type="ppmn:tDerivedFrom"/>
   <xsd:complexType name="tDerivedFrom">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tEntityRelationship">
            <xsd:sequence>
               <xsd:element name="derivationSource" type="ppmn:tElementReference"/>
               <xsd:element name="derivedEntity" type="ppmn:tElementReference"/>
               <xsd:element name="pedigreeOccurrence"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="role" type="xsd:string"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="DerivationType" type="ppmn:tDerivationType"/>
   <xsd:complexType name="tDerivationType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationshipType">
            <xsd:sequence>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="target" type="ppmn:tElementReference"/>
               <xsd:element name="source" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="DerivationKind" type="ppmn:tDerivationKind"/>
   <xsd:complexType name="tDerivationKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PedigreeKind" type="ppmn:tPedigreeKind"/>
   <xsd:complexType name="tPedigreeKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntityPedigree" type="ppmn:tEntityPedigree"/>
   <xsd:complexType name="tEntityPedigree">
      <xsd:complexContent>
         <xsd:extension base="sce:tTypedElement">
            <xsd:sequence>
               <xsd:element name="entity" type="ppmn:tElementReference"/>
               <xsd:element name="ancestors"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="lineage"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PedigreeTypeGraph" type="ppmn:tPedigreeTypeGraph"/>
   <xsd:complexType name="tPedigreeTypeGraph">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceTypeGraph">
            <xsd:sequence/>
            <xsd:attribute name="isStrict" use="optional" type="xsd:boolean"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PedigreeOccurrenceChainType"
                type="ppmn:tPedigreeOccurrenceChainType"/>
   <xsd:complexType name="tPedigreeOccurrenceChainType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceChainType">
            <xsd:sequence>
               <xsd:element name="occurrenceType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="entityType" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PedigreeOccurrence" type="ppmn:tPedigreeOccurrence"/>
   <xsd:complexType name="tPedigreeOccurrence">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tActivityOccurrence">
            <xsd:sequence>
               <xsd:element name="derivations"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PedigreeOccurrenceType" type="ppmn:tPedigreeOccurrenceType"/>
   <xsd:complexType name="tPedigreeOccurrenceType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tActivityOccurrenceType">
            <xsd:sequence>
               <xsd:element name="subchain" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="EntityPedigreeType" type="ppmn:tEntityPedigreeType"/>
   <xsd:complexType name="tEntityPedigreeType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementType">
            <xsd:sequence>
               <xsd:element name="derivationTypes"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="entityType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PedigreeOccurenceChain" type="ppmn:tPedigreeOccurenceChain"/>
   <xsd:complexType name="tPedigreeOccurenceChain">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceChain">
            <xsd:sequence>
               <xsd:element name="entity" maxOccurs="unbounded" type="ppmn:tElementReference"/>
               <xsd:element name="source"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ProvenanceChangeOccurrence"
                type="ppmn:tProvenanceChangeOccurrence"/>
   <xsd:complexType name="tProvenanceChangeOccurrence">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tActivityOccurrence">
            <xsd:sequence>
               <xsd:element name="responsibleParty"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="subchain" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="primaryEntityDependency" type="ppmn:tElementReference"/>
               <xsd:element name="priorProvenance"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingProvenance"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ProvenanceChangeType" type="ppmn:tProvenanceChangeType"/>
   <xsd:complexType name="tProvenanceChangeType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tActivityOccurrenceType">
            <xsd:sequence>
               <xsd:element name="subchainType" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="expectedResponsiblePartyType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="entityType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="priorResponsibilityType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingResponsibilityType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ProvenanceOccurrenceChain" type="ppmn:tProvenanceOccurrenceChain"/>
   <xsd:complexType name="tProvenanceOccurrenceChain">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceChain">
            <xsd:sequence>
               <xsd:element name="entity" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ProvenanceOccurrenceChainType"
                type="ppmn:tProvenanceOccurrenceChainType"/>
   <xsd:complexType name="tProvenanceOccurrenceChainType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceChainType">
            <xsd:sequence>
               <xsd:element name="entityType" type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ProvenanceTypeGraph" type="ppmn:tProvenanceTypeGraph"/>
   <xsd:complexType name="tProvenanceTypeGraph">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceTypeGraph">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipOccurrenceChainType"
                type="ppmn:tOwnershipOccurrenceChainType"/>
   <xsd:complexType name="tOwnershipOccurrenceChainType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceOccurrenceChainType">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipChangeOccurrence" type="ppmn:tOwnershipChangeOccurrence"/>
   <xsd:complexType name="tOwnershipChangeOccurrence">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceChangeOccurrence">
            <xsd:sequence>
               <xsd:element name="owner"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="subchain" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="previousOwner"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipOccurrenceType" type="ppmn:tOwnershipOccurrenceType"/>
   <xsd:complexType name="tOwnershipOccurrenceType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceChangeType">
            <xsd:sequence>
               <xsd:element name="priorOwnerTypes"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingOwnerTypes"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="priorOwnershipType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingOwnershipType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipOccurrenceChain" type="ppmn:tOwnershipOccurrenceChain"/>
   <xsd:complexType name="tOwnershipOccurrenceChain">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceOccurrenceChain">
            <xsd:sequence>
               <xsd:element name="initialAcquisition" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Ownership" type="ppmn:tOwnership"/>
   <xsd:complexType name="tOwnership">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tResponsibilityRelationship">
            <xsd:sequence>
               <xsd:element name="owner" maxOccurs="unbounded" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipTypeGraph" type="ppmn:tOwnershipTypeGraph"/>
   <xsd:complexType name="tOwnershipTypeGraph">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceTypeGraph">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipEndKind" type="ppmn:tOwnershipEndKind"/>
   <xsd:complexType name="tOwnershipEndKind">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOwnershipOccurrenceKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="AcquisitionKind" type="ppmn:tAcquisitionKind"/>
   <xsd:complexType name="tAcquisitionKind">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOwnershipOccurrenceKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ChainOfOwnership" type="ppmn:tChainOfOwnership"/>
   <xsd:complexType name="tChainOfOwnership">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tChainOfProvenance">
            <xsd:sequence>
               <xsd:element name="ownership"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ChainOfOwnershipType" type="ppmn:tChainOfOwnershipType"/>
   <xsd:complexType name="tChainOfOwnershipType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tChainOfProvenanceType">
            <xsd:sequence>
               <xsd:element name="ownershipType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipOccurrenceKind" type="ppmn:tOwnershipOccurrenceKind"/>
   <xsd:complexType name="tOwnershipOccurrenceKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipKind" type="ppmn:tOwnershipKind"/>
   <xsd:complexType name="tOwnershipKind">
      <xsd:sequence/>
   </xsd:complexType>

<xsd:element name="OwnershipType" type="ppmn:tOwnershipType"/>
   <xsd:complexType name="tOwnershipType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tResponsibilityRelationshipType">
            <xsd:sequence>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="ownerType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipTransferKind" type="ppmn:tOwnershipTransferKind"/>
   <xsd:complexType name="tOwnershipTransferKind">
      <xsd:sequence/>
   </xsd:complexType>

<xsd:element name="CustodyChangeType" type="ppmn:tCustodyChangeType"/>
   <xsd:complexType name="tCustodyChangeType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceChangeType">
            <xsd:sequence>
               <xsd:element name="priorCustodianTypes"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingCustodianTypes"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="priorCustodyType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="resultingCustodyType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyOccurrenceChain" type="ppmn:tCustodyOccurrenceChain"/>
   <xsd:complexType name="tCustodyOccurrenceChain">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceOccurrenceChain">
            <xsd:sequence>
               <xsd:element name="custodyStart" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyOccurrenceChainType"
                type="ppmn:tCustodyOccurrenceChainType"/>
   <xsd:complexType name="tCustodyOccurrenceChainType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceOccurrenceChainType">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyChangeOccurrence" type="ppmn:tCustodyChangeOccurrence"/>
   <xsd:complexType name="tCustodyChangeOccurrence">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceChangeOccurrence">
            <xsd:sequence>
               <xsd:element name="custodian" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="subchain" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="previousCustodian"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Custody" type="ppmn:tCustody"/>
   <xsd:complexType name="tCustody">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tResponsibilityRelationship">
            <xsd:sequence>
               <xsd:element name="custodian"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyTypeGraph" type="ppmn:tCustodyTypeGraph"/>
   <xsd:complexType name="tCustodyTypeGraph">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tProvenanceTypeGraph">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyEndKind" type="ppmn:tCustodyEndKind"/>
   <xsd:complexType name="tCustodyEndKind">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tCustodyChangeKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyStartKind" type="ppmn:tCustodyStartKind"/>
   <xsd:complexType name="tCustodyStartKind">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tCustodyChangeKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ChainOfCustody" type="ppmn:tChainOfCustody"/>
   <xsd:complexType name="tChainOfCustody">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tChainOfProvenance">
            <xsd:sequence>
               <xsd:element name="custody" maxOccurs="unbounded" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyType" type="ppmn:tCustodyType"/>
   <xsd:complexType name="tCustodyType">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tResponsibilityRelationshipType">
            <xsd:sequence>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="custodianType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyKind" type="ppmn:tCustodyKind"/>
   <xsd:complexType name="tCustodyKind">
      <xsd:sequence/>
   </xsd:complexType>

<xsd:element name="ChainOfCustodyType" type="ppmn:tChainOfCustodyType"/>
   <xsd:complexType name="tChainOfCustodyType">
      <xsd:sequence>
         <xsd:element name="custodyType" type="ppmn:tElementReference"/>
      </xsd:sequence>
   </xsd:complexType>

<xsd:element name="CustodyChangeKind" type="ppmn:tCustodyChangeKind"/>
   <xsd:complexType name="tCustodyChangeKind">
      <xsd:sequence/>
   </xsd:complexType>

<xsd:element name="CustodyTransferKind" type="ppmn:tCustodyTransferKind"/>
   <xsd:complexType name="tCustodyTransferKind">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tCustodyChangeKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ResponsibilityRelationship"
                type="ppmn:tResponsibilityRelationship"/>
   <xsd:complexType name="tResponsibilityRelationship">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="entity" type="ppmn:tElementReference"/>
               <xsd:element name="responsibleParty"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="responsibilityDescription"
                            minOccurs="0"
                            type="sce:tDocumentation"/>
               <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="kind" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="start" use="optional" type="xsd:dateTime"/>
            <xsd:attribute name="end" use="optional" type="xsd:dateTime"/>
            <xsd:attribute name="isUnique" type="xsd:boolean"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ChainOfProvenance" type="ppmn:tChainOfProvenance"/>
   <xsd:complexType name="tChainOfProvenance">
      <xsd:sequence>
         <xsd:element name="provenance"
                      maxOccurs="unbounded"
                      type="ppmn:tElementReference"/>
         <xsd:element name="entity" type="ppmn:tElementReference"/>
         <xsd:element name="type" minOccurs="0" type="ppmn:tElementReference"/>
      </xsd:sequence>
   </xsd:complexType>

<xsd:element name="ResponsibilityRelationshipType"
                type="ppmn:tResponsibilityRelationshipType"/>
   <xsd:complexType name="tResponsibilityRelationshipType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationshipType">
            <xsd:sequence>
               <xsd:element name="description" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="kind" type="ppmn:tElementReference"/>
               <xsd:element name="entityType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="responsiblePartyType"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ResponsibilityRelationshipKind"
                type="ppmn:tResponsibilityRelationshipKind"/>
   <xsd:complexType name="tResponsibilityRelationshipKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ChainOfProvenanceType" type="ppmn:tChainOfProvenanceType"/>
   <xsd:complexType name="tChainOfProvenanceType">
      <xsd:sequence>
         <xsd:element name="provenanceType"
                      maxOccurs="unbounded"
                      type="ppmn:tElementReference"/>
         <xsd:element name="entityType"
                      maxOccurs="unbounded"
                      type="ppmn:tElementReference"/>
      </xsd:sequence>
   </xsd:complexType>

<xsd:element name="ProvenanceChangeKind" type="ppmn:tProvenanceChangeKind"/>
   <xsd:complexType name="tProvenanceChangeKind">
      <xsd:sequence/>
   </xsd:complexType>

<xsd:element name="DateTime" type="ppmn:tDateTime"/>
   <xsd:complexType name="tDateTime">
      <xsd:sequence/>
   </xsd:complexType>

<xsd:element name="PPMNDefinitions" type="ppmn:tPPMNDefinitions"/>
   <xsd:complexType name="tPPMNDefinitions">
      <xsd:complexContent>
         <xsd:extension base="parties:tPartyDefinitions">
            <xsd:sequence>
               <xsd:element name="appliedProfile"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="occurrenceType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceType"/>
               <xsd:element name="occurrenceChainType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceChainType"/>
               <xsd:element name="occurrenceRoleType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceRoleType"/>
               <xsd:element name="entityDependencyType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceDependencyType"/>
               <xsd:element name="entityRelationshipType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tEntityRelationshipType"/>
               <xsd:element name="occurrenceTypeGraph"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceTypeGraph"/>
               <xsd:element name="entityType"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tEntityType"/>
               <xsd:element name="entityFormat"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tEntityFormat"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PPMNInstances" type="ppmn:tPPMNInstances"/>
   <xsd:complexType name="tPPMNInstances">
      <xsd:complexContent>
         <xsd:extension base="parties:tPartyInstances">
            <xsd:sequence>
               <xsd:element name="entity"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tEntity"/>
               <xsd:element name="entityRelationship"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tEntityRelationship"/>
               <xsd:element name="entityFormat"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tEntityFormat"/>
               <xsd:element name="occurrence"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrence"/>
               <xsd:element name="occurrenceChain"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceChain"/>
               <xsd:element name="occurrenceRole"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceRole"/>
               <xsd:element name="entityDependency"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tOccurrenceDependency"/>
               <xsd:element name="typedElement"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="sce:tTypedElement"/>
               <xsd:element name="ppmnDefinitions"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PPMNModel" type="ppmn:tPPMNModel"/>
   <xsd:complexType name="tPPMNModel">
      <xsd:complexContent>
         <xsd:extension base="parties:tPartyModel">
            <xsd:sequence>
               <xsd:element name="occurrrences" minOccurs="0" type="ppmn:tPPMNInstances"/>
               <xsd:element name="definitions" type="ppmn:tPPMNDefinitions"/>
               <xsd:element name="ppmnVocabulary"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tPPMNKindSet"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="DelegationAssignment" type="ppmn:tDelegationAssignment"/>
   <xsd:complexType name="tDelegationAssignment">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tActivityOccurrence">
            <xsd:sequence>
               <xsd:element name="delegation" type="ppmn:tElementReference"/>
               <xsd:element name="delegator" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ActedOnBehalfOf" type="ppmn:tActedOnBehalfOf"/>
   <xsd:complexType name="tActedOnBehalfOf">
      <xsd:complexContent>
         <xsd:extension base="parties:tPartyRelationship">
            <xsd:sequence>
               <xsd:element name="representedParty" type="ppmn:tElementReference"/>
               <xsd:element name="representative" type="ppmn:tElementReference"/>
               <xsd:element name="justification" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="inRole" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="AttributedTo" type="ppmn:tAttributedTo"/>
   <xsd:complexType name="tAttributedTo">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tAssociatedWith">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="AlternateOf" type="ppmn:tAlternateOf"/>
   <xsd:complexType name="tAlternateOf">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Informed" type="ppmn:tInformed"/>
   <xsd:complexType name="tInformed">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceRelationship">
            <xsd:sequence>
               <xsd:element name="informer" type="ppmn:tElementReference"/>
               <xsd:element name="informed" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="AssociatedWith" type="ppmn:tAssociatedWith"/>
   <xsd:complexType name="tAssociatedWith">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="entity" type="ppmn:tElementReference"/>
               <xsd:element name="party" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ClaimAssessment" type="ppmn:tClaimAssessment"/>
   <xsd:complexType name="tClaimAssessment">
      <xsd:complexContent>
         <xsd:extension base="sce:tBaseElement">
            <xsd:sequence>
               <xsd:element name="claim" type="ppmn:tElementReference"/>
               <xsd:element name="assessor" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Evidence" type="ppmn:tEvidence"/>
   <xsd:complexType name="tEvidence">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tOccurrenceClaim">
            <xsd:sequence>
               <xsd:element name="evidentiaryElement"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
               <xsd:element name="supportedClaim"
                            maxOccurs="unbounded"
                            type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceClaim" type="ppmn:tOccurrenceClaim"/>
   <xsd:complexType name="tOccurrenceClaim">
      <xsd:complexContent>
         <xsd:extension base="sce:tBaseElement">
            <xsd:sequence>
               <xsd:element name="claimant" type="ppmn:tElementReference"/>
               <xsd:element name="occurrence" type="ppmn:tElementReference"/>
               <xsd:element name="assessment"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="evidence"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="kind" type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="timeOfClaim" type="xsd:dateTime"/>
            <xsd:attribute name="claimPositivity" type="ppmn:tClaimPositivity"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ClaimKind" type="ppmn:tClaimKind"/>
   <xsd:complexType name="tClaimKind">
      <xsd:complexContent>
         <xsd:extension base="sce:tKind">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

   <xsd:simpleType name="tClaimPositivity">
      <xsd:restriction base="xsd:string">
         <xsd:enumeration value="True"/>
         <xsd:enumeration value="False"/>
         <xsd:enumeration value="Possible"/>
      </xsd:restriction>
   </xsd:simpleType>
   
<xsd:element name="Rationale" type="ppmn:tRationale"/>
   <xsd:complexType name="tRationale">
      <xsd:complexContent>
         <xsd:extension base="sce:tTypedElement">
            <xsd:sequence>
               <xsd:element name="type"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tElementReference"/>
               <xsd:element name="provider" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="RationaleType" type="ppmn:tRationaleType"/>
   <xsd:complexType name="tRationaleType">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementType">
            <xsd:sequence>
               <xsd:element name="providerType" minOccurs="0" type="ppmn:tElementReference"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PPMNKindSet" type="ppmn:tPPMNKindSet"/>
   <xsd:complexType name="tPPMNKindSet">
      <xsd:complexContent>
         <xsd:extension base="sce:tKindSet">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PPMNRelationshipKindSet" type="ppmn:tPPMNRelationshipKindSet"/>
   <xsd:complexType name="tPPMNRelationshipKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="sce:tRelationshipKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ClaimKindSet" type="ppmn:tClaimKindSet"/>
   <xsd:complexType name="tClaimKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term" maxOccurs="unbounded" type="ppmn:tClaimKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyEndKindSet" type="ppmn:tCustodyEndKindSet"/>
   <xsd:complexType name="tCustodyEndKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term" maxOccurs="unbounded" type="ppmn:tCustodyEndKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="CustodyStartKindSet" type="ppmn:tCustodyStartKindSet"/>
   <xsd:complexType name="tCustodyStartKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term" maxOccurs="unbounded" type="ppmn:tCustodyStartKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OwnershipEndKindSet" type="ppmn:tOwnershipEndKindSet"/>
   <xsd:complexType name="tOwnershipEndKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term" maxOccurs="unbounded" type="ppmn:tOwnershipEndKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="AcquisitionKindSet" type="ppmn:tAcquisitionKindSet"/>
   <xsd:complexType name="tAcquisitionKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term" maxOccurs="unbounded" type="ppmn:tAcquisitionKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="PedigreeEndKindSet" type="ppmn:tPedigreeEndKindSet"/>
   <xsd:complexType name="tPedigreeEndKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="OccurrenceDependencyKindSet"
                type="ppmn:tOccurrenceDependencyKindSet"/>
   <xsd:complexType name="tOccurrenceDependencyKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term"
                            maxOccurs="unbounded"
                            type="ppmn:tOccurrenceDependencyKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="DerivationKindSet" type="ppmn:tDerivationKindSet"/>
   <xsd:complexType name="tDerivationKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term" maxOccurs="unbounded" type="ppmn:tDerivationKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ResponsibilityRelationshipKindSet"
                type="ppmn:tResponsibilityRelationshipKindSet"/>
   <xsd:complexType name="tResponsibilityRelationshipKindSet">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tPPMNKindSet">
            <xsd:sequence>
               <xsd:element name="term"
                            maxOccurs="unbounded"
                            minOccurs="0"
                            type="ppmn:tResponsibilityRelationshipKind"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="Annotation" type="ppmn:tAnnotation"/>
   <xsd:complexType name="tAnnotation">
      <xsd:complexContent>
         <xsd:extension base="sce:tBaseElement">
            <xsd:sequence>
               <xsd:element name="template" minOccurs="0" type="ppmn:tElementReference"/>
               <xsd:element name="creator" type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="creationDate" type="xsd:dateTime"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="ChronicledAnnotation" type="ppmn:tChronicledAnnotation"/>
   <xsd:complexType name="tChronicledAnnotation">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tAnnotation">
            <xsd:sequence>
               <xsd:element name="entry" maxOccurs="unbounded" type="ppmn:tSimpleAnnotation"/>
            </xsd:sequence>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="SimpleAnnotation" type="ppmn:tSimpleAnnotation"/>
   <xsd:complexType name="tSimpleAnnotation">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tAnnotation">
            <xsd:sequence/>
            <xsd:attribute name="annotation" type="xsd:string"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="AnnotationTemplate" type="ppmn:tAnnotationTemplate"/>
   <xsd:complexType name="tAnnotationTemplate">
      <xsd:complexContent>
         <xsd:extension base="ppmn:tAnnotation">
            <xsd:sequence/>
            <xsd:attribute name="templateAnnotation" type="xsd:string"/>
            <xsd:attribute name="isChronicled" type="xsd:boolean"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

<xsd:element name="AnnotationAssignment" type="ppmn:tAnnotationAssignment"/>
   <xsd:complexType name="tAnnotationAssignment">
      <xsd:complexContent>
         <xsd:extension base="sce:tElementRelationship">
            <xsd:sequence>
               <xsd:element name="annotatedElement" type="ppmn:tElementReference"/>
               <xsd:element name="source" type="ppmn:tElementReference"/>
            </xsd:sequence>
            <xsd:attribute name="assignmentDate" type="xsd:dateTime"/>
            <xsd:attribute name="isPermanent" type="xsd:boolean"/>
         </xsd:extension>
      </xsd:complexContent>
   </xsd:complexType>

</xsd:schema>
