<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xalan="http://xml.apache.org/xalan"
xmlns:dp="http://www.dpawson.co.uk"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:date="http://exslt.org/dates-and-times"
exclude-result-prefixes="xalan">

<xsl:include href="date.add.template.xsl"/>




<xsl:template match="/">


  
  



<palantir xmlns="http://www.palantirtech.com/pg/schema/import/"><xsl:text>&#10;</xsl:text>
<graph><xsl:text>&#10;</xsl:text>
  <dataSourceSet><xsl:text>&#10;</xsl:text>
    <dataSource id='PT_DATASOURCE1' type='com.palantir.datasource.xml.mets'>
      <name>Migrant_Data.xml</name>
      <description></description>
    </dataSource>
  </dataSourceSet><xsl:text>&#10;</xsl:text>

  <objectSet>
    <xsl:for-each select="dataroot/CoastGuardRecord">
       
    
      <xsl:choose>
        <xsl:when test="RecordType = 'Interdiction'">
          <object id='PT_OBJECT_{generate-id()}' type='com.palantir.object.Interdiction' baseType='com.palantir.object.event' >
            <xsl:text>&#10;</xsl:text>
            <title>Interdiction on <xsl:value-of select="EncounterDate"/></title>
            <xsl:text>&#10;</xsl:text>
            <propertySet><xsl:text>&#10;</xsl:text>
            
              
              
              <property id='PT_PROPERTY_{generate-id(EncounterCoords/Latitude)}' type='com.palantir.property.latitudedecimal' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="EncounterCoords/Latitude"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>        
              <property id='PT_PROPERTY_{generate-id(EncounterCoords/Longitude)}' type='com.palantir.property.longitudedecimal' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="EncounterCoords/Longitude"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text> 
            
        
              
              <property id='PT_PROPERTY_{generate-id(Passengers)}' type='com.palantir.property.Passengers' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="Passengers"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
              <property id='PT_PROPERTY_{generate-id(EncounterDate)}' type='com.palantir.property.Date' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="EncounterDate"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
              <property id='PT_PROPERTY_{generate-id(NumDeaths)}' type='com.palantir.property.Deaths' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="NumDeaths"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
              <property id='PT_PROPERTY_{generate-id(VesselType)}' type='com.palantir.property.VesselType' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="VesselType"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
              
              
              
              
               <property id='PT_PROPERTY_{generate-id(EncounterDate)}_A' type='com.palantir.property.TimeInterval' linkType='com.palantir.link.TimeInterval' role='com.palantir.role.none' keywordDisabled='false' >

               <propertyValue>
                  <xsl:variable name="encounterDateVariable"><xsl:value-of select="EncounterDate"/></xsl:variable>
                  <propertyTimeInterval timeStart="{$encounterDateVariable}T00:00:00.000-08:00" timeEnd="{$encounterDateVariable}T00:00:00.000-08:00"/>
               </propertyValue>


               <dataSourceRecordSet>
                  <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='3151' recordLocator='0' >
                  </dataSourceRecord>
               </dataSourceRecordSet>
              </property>
        
              
              
            </propertySet><xsl:text>&#10;</xsl:text>
            
          </object><xsl:text>&#10;</xsl:text>
        </xsl:when>
        
        
        
        
        <xsl:otherwise><xsl:text>&#10;</xsl:text>
          <object id='PT_OBJECT_{generate-id()}' type='com.palantir.object.Landing' baseType='com.palantir.object.event' >
            <xsl:text>&#10;</xsl:text>
            <title>Landing on <xsl:value-of select="EncounterDate"/></title>
            <xsl:text>&#10;</xsl:text>
            <propertySet><xsl:text>&#10;</xsl:text>
            
              
              <property id='PT_PROPERTY_{generate-id(EncounterCoords/Latitude)}' type='com.palantir.property.latitudedecimal' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="EncounterCoords/Latitude"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>        
              <property id='PT_PROPERTY_{generate-id(EncounterCoords/Longitude)}' type='com.palantir.property.longitudedecimal' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="EncounterCoords/Longitude"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text> 
              
              <property id='PT_PROPERTY_{generate-id(Passengers)}' type='com.palantir.property.Passengers' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="Passengers"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
              <property id='PT_PROPERTY_{generate-id(EncounterDate)}' type='com.palantir.property.Date' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="EncounterDate"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
              <property id='PT_PROPERTY_{generate-id(NumDeaths)}' type='com.palantir.property.Deaths' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="NumDeaths"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
              <property id='PT_PROPERTY_{generate-id(VesselType)}' type='com.palantir.property.VesselType' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="VesselType"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>
              
               <property id='PT_PROPERTY_{generate-id(EncounterDate)}_A' type='com.palantir.property.TimeInterval' linkType='com.palantir.link.TimeInterval' role='com.palantir.role.none' keywordDisabled='false' >

               <propertyValue>
                  <xsl:variable name="encounterDateVariable"><xsl:value-of select="EncounterDate"/></xsl:variable>
                  <propertyTimeInterval timeStart="{$encounterDateVariable}T00:00:00.000-08:00" timeEnd="{$encounterDateVariable}T00:00:00.000-08:00"/>
               </propertyValue>


               <dataSourceRecordSet>
                  <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='3151' recordLocator='0' >
                  </dataSourceRecord>
               </dataSourceRecordSet>
              </property>
              
              
            </propertySet><xsl:text>&#10;</xsl:text>
            
          </object><xsl:text>&#10;</xsl:text>
      
        </xsl:otherwise>
      </xsl:choose>
    <xsl:text>&#10;</xsl:text>   
    </xsl:for-each>
    
    
    
    
    
    
    <xsl:for-each select="dataroot/CoastGuardRecord">
      <xsl:if test="string-length(USCG_Vessel) &gt; 0">
        
        <object id='PT_OBJECT_{generate-id(USCG_Vessel)}' type='com.palantir.object.Cutter' baseType='com.palantir.object.Entity' >
            <xsl:text>&#10;</xsl:text>
            <title><xsl:value-of select="USCG_Vessel"/></title>
            <xsl:text>&#10;</xsl:text>
            <propertySet>
            
            <property id='PT_PROPERTY_{generate-id(USCG_Vessel)}' type='com.palantir.property.VesselName' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="USCG_Vessel"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>        
            </propertySet><xsl:text>&#10;</xsl:text>
        </object>
        <xsl:text>&#10;</xsl:text>
      </xsl:if>
    </xsl:for-each>
    <xsl:text>&#10;</xsl:text> <xsl:text>&#10;</xsl:text> 
    
    
    
    <xsl:for-each select="dataroot/CoastGuardRecord">   
        <xsl:for-each select="RecordNotes/Passenger">
          <object id='PT_OBJECT_{generate-id()}' type='com.palantir.object.Person' baseType='com.palantir.object.Entity' >
            <xsl:text>&#10;</xsl:text>
              <title><xsl:value-of select="."/></title>
            <xsl:text>&#10;</xsl:text>
            <propertySet>
              <property id='PT_PROPERTY_{generate-id()}' type='com.palantir.property.Name' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>              
                  <propertyValue>
                     <propertyRawValue><xsl:value-of select="."/></propertyRawValue>
                  </propertyValue>
                  
                  
                  
                  
                  <xsl:text>&#10;</xsl:text>
                  <dataSourceRecordSet>
                    <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                    </dataSourceRecord>
                  </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>        
            </propertySet><xsl:text>&#10;</xsl:text>
          </object><xsl:text>&#10;</xsl:text>
        </xsl:for-each>
        <xsl:text>&#10;</xsl:text>
    </xsl:for-each> 
    <xsl:text>&#10;</xsl:text><xsl:text>&#10;</xsl:text><xsl:text>&#10;</xsl:text>
    
    
    
    <xsl:for-each select="dataroot/CoastGuardRecord">
      <xsl:if test="LaunchCoords/Latitude">
        <object id='PT_OBJECT_{generate-id(LaunchCoords)}' type='com.palantir.object.Launch' baseType='com.palantir.object.event' >
            <xsl:text>&#10;</xsl:text>
            <title>Launch on 
                    <xsl:choose>
                      <xsl:when test="VesselType = 'Go Fast'">
                        <xsl:call-template name="date:add">
                          <xsl:with-param name="date-time" select="EncounterDate"/>
                          <xsl:with-param name="duration" select="'-P0D'"/>
                        </xsl:call-template>  
                      </xsl:when>             
                      <xsl:when test="VesselType = 'Rustic'">
                         <xsl:call-template name="date:add">
                          <xsl:with-param name="date-time" select="EncounterDate"/>
                          <xsl:with-param name="duration" select="'-P1D'"/>
                        </xsl:call-template> 
                      </xsl:when>
                      <xsl:when test="VesselType = 'Raft'">
                        <xsl:call-template name="date:add">
                          <xsl:with-param name="date-time" select="EncounterDate"/>
                          <xsl:with-param name="duration" select="'-P2D'"/>
                        </xsl:call-template> 
                      </xsl:when>
                    </xsl:choose>  
            
            
            </title>
            <xsl:text>&#10;</xsl:text>
            <propertySet>
            <property id='PT_PROPERTY_{generate-id(LaunchCoords/Latitude)}' type='com.palantir.property.latitudedecimal' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="LaunchCoords/Latitude"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text>        
              <property id='PT_PROPERTY_{generate-id(LaunchCoords/Longitude)}' type='com.palantir.property.longitudedecimal' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData><xsl:value-of select="LaunchCoords/Longitude"/></propertyData>
                </propertyValue>
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text> 
    
              <property id='PT_PROPERTY_{generate-id(LaunchCoords/LaunchDate)}' type='com.palantir.property.date' role='com.palantir.role.none' keywordDisabled='false' ><xsl:text>&#10;</xsl:text>
                <propertyValue><xsl:text>&#10;</xsl:text>
                  <propertyData>
                    <xsl:choose>
                      <xsl:when test="VesselType = 'Go Fast'">
                        <xsl:call-template name="date:add">
                          <xsl:with-param name="date-time" select="EncounterDate"/>
                          <xsl:with-param name="duration" select="'-P0D'"/>
                        </xsl:call-template>  
                      </xsl:when>             
                      <xsl:when test="VesselType = 'Rustic'">
                         <xsl:call-template name="date:add">
                          <xsl:with-param name="date-time" select="EncounterDate"/>
                          <xsl:with-param name="duration" select="'-P1D'"/>
                        </xsl:call-template> 
                      </xsl:when>
                      <xsl:when test="VesselType = 'Raft'">
                        <xsl:call-template name="date:add">
                          <xsl:with-param name="date-time" select="EncounterDate"/>
                          <xsl:with-param name="duration" select="'-P2D'"/>
                        </xsl:call-template> 
                      </xsl:when>
                    </xsl:choose>  
                  </propertyData>
                </propertyValue>
                
                <xsl:text>&#10;</xsl:text>
                <dataSourceRecordSet>
                <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
                </dataSourceRecord>
                </dataSourceRecordSet>
              </property><xsl:text>&#10;</xsl:text> 
          
               
               
                <property id='PT_PROPERTY_{generate-id(EncounterDate)}_B' type='com.palantir.property.TimeInterval' linkType='com.palantir.link.TimeInterval' role='com.palantir.role.none' keywordDisabled='false' >

               <propertyValue>
                  <xsl:variable name="encounterDateVariable"><xsl:value-of select="EncounterDate"/></xsl:variable>
                  <propertyTimeInterval timeStart="{$encounterDateVariable}T00:00:00.000-08:00" timeEnd="{$encounterDateVariable}T00:00:00.000-08:00"/>
               </propertyValue>


               <dataSourceRecordSet>
                  <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='3151' recordLocator='0' >
                  </dataSourceRecord>
               </dataSourceRecordSet>
              </property>
              
              
              
            </propertySet><xsl:text>&#10;</xsl:text>
        </object>
        <xsl:text>&#10;</xsl:text>
      </xsl:if>
    </xsl:for-each>
    <xsl:text>&#10;</xsl:text> <xsl:text>&#10;</xsl:text>
    
    
         
  </objectSet><xsl:text>&#10;</xsl:text><xsl:text>&#10;</xsl:text><xsl:text>&#10;</xsl:text><xsl:text>&#10;</xsl:text>
  
  
  
  
  
  
  
  <linkSet><xsl:text>&#10;</xsl:text>
  

    <xsl:for-each select="dataroot/CoastGuardRecord">
      <xsl:if test="string-length(USCG_Vessel) &gt; 0">
        <link id='PT_LINK_RELATION_{generate-id(USCG_Vessel)}' parentRef='PT_OBJECT_{generate-id()}' childRef='PT_OBJECT_{generate-id(USCG_Vessel)}' type='com.palantir.link.Simple' role='com.palantir.role.none' ><xsl:text>&#10;</xsl:text>
          <dataSourceRecordSet>
            <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
            </dataSourceRecord>
          </dataSourceRecordSet>    
        </link>
      <xsl:text>&#10;</xsl:text>
      </xsl:if>
    </xsl:for-each>
  


  <xsl:text>&#10;</xsl:text>
  <xsl:text>&#10;</xsl:text>
  <xsl:text>&#10;</xsl:text>

        
      <xsl:for-each select="dataroot/CoastGuardRecord">   
        <xsl:for-each select="RecordNotes/Passenger">
          <link id='PT_LINK_RELATION_{generate-id()}' parentRef='PT_OBJECT_{generate-id(../..)}' childRef='PT_OBJECT_{generate-id()}' type='com.palantir.link.Simple' role='com.palantir.role.none' ><xsl:text>&#10;</xsl:text>
          <dataSourceRecordSet>
            <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
            </dataSourceRecord>
          </dataSourceRecordSet><xsl:text>&#10;</xsl:text> 
        </link><xsl:text>&#10;</xsl:text>
        </xsl:for-each>
        <xsl:text>&#10;</xsl:text>
      </xsl:for-each>


  <xsl:text>&#10;</xsl:text>
  <xsl:text>&#10;</xsl:text>
  <xsl:text>&#10;</xsl:text>


      <xsl:for-each select="dataroot/CoastGuardRecord">   
      <xsl:if test="LaunchCoords/Latitude">
        <xsl:for-each select="RecordNotes/Passenger">
          <link id='PT_LINK_RELATION_{generate-id()}_A' parentRef='PT_OBJECT_{generate-id(../../LaunchCoords)}' childRef='PT_OBJECT_{generate-id()}' type='com.palantir.link.Simple' role='com.palantir.role.none' ><xsl:text>&#10;</xsl:text>
          <dataSourceRecordSet>
            <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
            </dataSourceRecord>
          </dataSourceRecordSet><xsl:text>&#10;</xsl:text> 
        </link><xsl:text>&#10;</xsl:text>
        </xsl:for-each>
        <xsl:text>&#10;</xsl:text>
      </xsl:if>
      </xsl:for-each>




  <xsl:text>&#10;</xsl:text>
  <xsl:text>&#10;</xsl:text>
  <xsl:text>&#10;</xsl:text>

      <xsl:for-each select="dataroot/CoastGuardRecord">
      <xsl:if test="LaunchCoords/Latitude">
        <link id='PT_LINK_RELATION_{generate-id(LaunchCoords)}' parentRef='PT_OBJECT_{generate-id()}' childRef='PT_OBJECT_{generate-id(LaunchCoords)}' type='com.palantir.link.Simple' role='com.palantir.role.none' ><xsl:text>&#10;</xsl:text>
          <dataSourceRecordSet>
            <dataSourceRecord dataSource='PT_DATASOURCE1' importKey='0' recordLocator='0' >
            </dataSourceRecord>
          </dataSourceRecordSet>    
        </link>
      <xsl:text>&#10;</xsl:text>
      </xsl:if>
    </xsl:for-each>



  
  </linkSet>
  
  </graph>
  </palantir>
  
  
</xsl:template>








</xsl:stylesheet>