<?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>PartInAssemblyOfIndividualApplicableYesNo</TemplateName>
	<defaultRdsId>RE0F5621EC4204B519546D597272B6CF9</defaultRdsId>
	<Status>UPDATED MAR2023</Status>
	<TIPPredicate>hasAsAssemblyPartYN</TIPPredicate><Description>A PossibleIndividual has or has not a member of a ClassOfIndividual as a part in an assembly.</Description>
	<Example>Line RZ80183 has an injection point.</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>TemplateForStructureOfTemporalPart</SubClassOf><Definition>[EssentialType] individual [hasIndividual], a member of [hasClassOfWhole], [has | has not] one or more unidentified members of [hasClassOfPart] as a part in an assembly</Definition><ScopeNote/><AdminNote/><LiftedAndLoweredGraph>IN-STRUC-360-20220228.png</LiftedAndLoweredGraph>
	<LiftedTemplate>
	    	<LiftedTemplateElements><Ref>1</Ref>
	    		<URI>dm:PossibleIndividual</URI>
	    	</LiftedTemplateElements>
	    	<LiftedTemplateElements><Ref>2</Ref>
	    		<URI>dm:ClassOfIndividual</URI>
	    	</LiftedTemplateElements><LiftedTemplateElements><Ref>3</Ref><URI>dm:ClassOfIndividual</URI></LiftedTemplateElements>
	    	<LiftedTemplateElements><Ref>4</Ref>
	    		<URI>dm:ClassOfAssertion</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>dm:Classification</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>8</Ref><URI>dm:ClassOfTemporalPart</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>9</Ref><URI>dm:ClassOfIndividual</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>10</Ref><URI>dm:ClassOfTemporalPart</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>11</Ref><URI>dm:ClassOfIndividual</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>12</Ref><URI>dm:Specialization</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>13</Ref><URI>dm:ClassOfAssemblyOfIndividual</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>14</Ref><URI>dm:Beginning</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>15</Ref><URI>dm:PointInTime</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>16</Ref><URI>dm:ClassOfIdentification</URI></LiftedTemplateElements><LiftedTemplateElements><Ref>17</Ref><URI>dm:RepresentationOfGregorianDateAndUtcTime</URI></LiftedTemplateElements></LiftedTemplate>
	<PropertiesOfLoweredTemplate>



  	<TemplateSignature><RoleNo>1</RoleNo><RoleName>hasIndividual</RoleName><RoleObjectType>dm:PossibleIndividual</RoleObjectType><RoleExample/></TemplateSignature><TemplateSignature><RoleNo>2</RoleNo><RoleName>hasClassOfWhole</RoleName><RoleObjectType>dm:ClassOfIndividual</RoleObjectType><RoleExample/></TemplateSignature><TemplateSignature><RoleNo>3</RoleNo><RoleName>hasClassOfPart</RoleName><RoleObjectType>dm:ClassOfIndividual</RoleObjectType><RoleExample/></TemplateSignature><TemplateSignature><RoleNo>4</RoleNo><RoleName>valApplicableYesNo</RoleName><RoleObjectType>dm:ClassOfAssertion</RoleObjectType><RoleExample>use xsd:boolean</RoleExample></TemplateSignature></PropertiesOfLoweredTemplate>
	<LoweredTemplateOWLcode>
    		<![CDATA[
		]]>
 	 </LoweredTemplateOWLcode>
	<LoweredTemplateFOLcode><![CDATA[PartInAssemblyOfIndividualApplicableYesNo(hasIndividual, hasClassOfWhole, hasClassOfPart, hasApplicableYesNo) <->
Possibleindividual(hasIndividual) &
ClassOfIndividual(hasClassOfWhole) &
ClassOfIndividual(hasClassOfPart) &
ClassOfAssertion(hasApplicableYesNo) &
exists u1 exists u2 exists u3 exists u4 exists u5 exists u6(
      PossibleIndividual(u1) &
      TemporalWholePartTemplate(u1, hasIndividual) &
      ClassOfIndividual(u2) &
      ClassOfTemporalWholePartTemplate(u2, hasClassOfWhole) & 
      ClassOfIndividual(u3) &
      ClassOfTemporalWholePartTemplate(u3, hasClassOfPart) &
      ClassOfAssemblyOfIndividualTriple(u4, u3, u2) &
      ClassificationTemplate(u4, hasApplicableYesNo) &
      BeginningTemplate(u5, u1) &
      PointInTime(u5) &
      ClassOfIdentificationTemplate(u6, u5) &
      RepresentationOfGregorianDateAndUtcTime(u6)) .]]>
</LoweredTemplateFOLcode>

<LoweredTemplateInstanceListing>
<![CDATA[GENERIC DEFINITION

tpl:PartInAssemblyOfIndividualApplicableYesNo
      rdfs:subClassOf dm:Template ;
      rdfs:isDefinedBy tpl:IN-STRUC-360.xml ;
      tpl:hasIndividual   "ID"^^dm:PossibleIndividual ; 
      tpl:hasClassOfWhole  "ID"^^dm:ClassOfIndividual ; 
      tpl:hasClassOfPart  "ID"^^dm:ClassOfIndividual ;  
      tpl:valApplicableYesNo  ""^^xsd:boolean ;
      meta:valEffectiveDate "yyyy-mm-ddThh:mm:ss.sZ"^^xsd:dateTime .

# EXAMPLE - Line RZ80183 has an injection point.

ex:5ca2cea3-df22-4633-86f1-8c4ebfb4b97c
      rdf:type tpl:PartInAssemblyOfIndividualApplicableYesNo ;
      tpl:hasIndividual   ex:aada84df-c7d0-4579-a976-8f8e5a03a487 ; # RZ80183
      tpl:hasClassOfWhole  ex:1006670d-4c29-4a80-9cdc-61ffdd3333f0 ;  # CO-RZ80183 (the requirements class of RZ80183)
      tpl:hasClassOfPart  rdl:RDS2224587  ;  # INJECTION POINT
      tpl:valApplicableYesNo  "true"^^xsd:boolean ;
      meta:valEffectiveDate "2015-01-19T11:37:00Z"^^xsd:dateTime .
]]>
</LoweredTemplateInstanceListing>
</TemplateSpecification>
