<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet type="text/xsl" href="xsl-for-template-specification.xsl"?>
<TemplateSpecification xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xml-schema-for-template-specification.xsd">
	<TemplateName>ImplementationOfIndividualByIndividual</TemplateName>
	<defaultRdsId>C3D4D8CFE1FB43E6AC53B73D25EBACB1</defaultRdsId>
	<Status>UPDATED MAR2023</Status>
	<TIPPredicate>implementedBy INVERSE implements</TIPPredicate><Description>A PossibleIndividual existing in a NonActual PossibleWorld is implemented by a PossibleIndividual existing in the Actual World.</Description>
	<Example>Pump P-101 in the Design World is implemented by the installed pump with ID  P-101/AN-12345 in the Actual World.</Example>
	<Notes>At instantiation of this template it is mandatory to add meta:valEffectiveDate with the dateTime that the represented information became effective.</Notes>
	<SubClassOf>---</SubClassOf><Definition>[EssentialType] NonActualIndividual [hasImplemented] is implemented by [EssentialType] ActualIndividual [hasImplementer]</Definition><ScopeNote>The existence of this relationship does not tell that both have the same characteristics. The Counterpart relationship is the *ONLY* relationship allowable between objects in different Possible Worlds. A temporal part may have a Counterpart relationship whilst the temporal whole does not, ever.</ScopeNote><AdminNote/><LiftedAndLoweredGraph>IN-OTHRL-600-20240408.png</LiftedAndLoweredGraph>
	<LiftedTemplate>
	    	<LiftedTemplateElements>
	    		<Ref>1</Ref>
	    		<URI>dm:PossibleIndividual</URI>
	    	</LiftedTemplateElements>
	    	<LiftedTemplateElements>
	    		<Ref>2</Ref>
	    		<URI>dm:PossibleIndividual</URI>
	    	</LiftedTemplateElements>
	    	
	<LiftedTemplateElements><Ref>3</Ref><URI>dm:TemporalWholePart</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>4</Ref><URI>dm:PossibleIndividual</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>5</Ref><URI>dm:TemporalWholePart</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>6</Ref><URI>dm:PossibleIndividual</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>7</Ref><URI>lci:Implementation</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>8</Ref><URI>dm:</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>9</Ref><URI>dm:</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>10</Ref><URI>dm:</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>11</Ref><URI>dm:</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>12</Ref><URI>dm:</URI></LiftedTemplateElements></LiftedTemplate>
	<PropertiesOfLoweredTemplate>



  	<TemplateSignature><RoleNo>1</RoleNo><RoleName>hasImplementer</RoleName><RoleObjectType>dm:PossibleIndividual</RoleObjectType><RoleExample>e.g. Actual Pump with serial number</RoleExample></TemplateSignature><TemplateSignature><RoleNo>2</RoleNo><RoleName>hasImplemented</RoleName><RoleObjectType>dm:PossibleIndividual</RoleObjectType><RoleExample>e.g. Designed Pump with tag number</RoleExample></TemplateSignature></PropertiesOfLoweredTemplate>
	<LoweredTemplateOWLcode>
    		<![CDATA[
		]]>
 	 </LoweredTemplateOWLcode>
	<LoweredTemplateFOLcode><![CDATA[ImplementationOfIndividualByIndividual(hasImplementer, hasImplemented) <->
PossibleIndividual(hasImplementer) &
PossibleIndividual(hasImplemented) &
exixts u1 exists u2(
	PossibleIndividual(u1) &
	TemporalWholePartTemplate(u1, hasImplementer) &
	PossibleIndividual(u2) &
	TemporalWholePartTemplate(u2, hasImplemented) &
	ImplementationTemplate(u2, u1)) .]]>
</LoweredTemplateFOLcode>

<LoweredTemplateInstanceListing>
<![CDATA[GENERIC DEFINITION

tpl:ImplementationOfIndividualByIndividual
      rdfs:subClassOf dm:Template ;
      rdfs:isDefinedBy tpl:IN-OTHRL-200.xml ;
      tpl:hasImplemented  dm:PossibleIndividual ; 
      tpl:hasImplementer  dm:PossibleIndividual ;
      meta:valEffectiveDate xsd:dateTime .

# EXAMPLE - Pump P-101 in the Design World is implemented by the installed pump with ID  P-101/AN-12345 in the Actual World.

ex:f3cc1717-59d1-492b-912c-3154e11698c6
      rdf:type tpl:ImplementationOfIndividualByIndividual ;
      tpl:hasImplemented ex:6eb04c7f-2623-4790-ad87-d34271697bcb ; # P-101
      tpl:hasImplementer ex:e666f5e6-81e3-4c99-a8a9-b7f24e84a3ec ; # P-101/AN-12345
      meta:valEffectiveDate "2022-02-24T14:30:00Z"^^xsd:dateTime .
]]>
</LoweredTemplateInstanceListing>
</TemplateSpecification>
