Template:— assigning_concession (asg_conc)
Capability: representing_variance
Date: 2007/07/03 10:10:47
Revision: 1.7
Template: assigning_concession

Path

-- Note from TJT: This template last worked with Version 1.33 of assigning_approvals edited 2006/1/24 8:39:57
-- Fixed mapping path to work with version 1.34 of approvals Date: 2006/04/15 22:10:23
-- Figures now also updated
-- Call Assigning_approval.
/assigning_approval(
    status=@status,
    status_ecl_id=@status_ecl_id,
    items=@items)/

-- Get the approval instance from the template call
%^ref_approval_assgn = $assigning_approval.approval_assgn%
%^ref_approval = $assigning_approval.approval%

-- Assign Ref data to Approval
/assigning_reference_data(
    items=^ref_approval,
    class_name=@asn_role,
    ecl_id=@role_ecl_id)/

-- Assign the approval date
/assigning_calendar_date(
    date_class_name=@date_cn,
    date_ecl_id=@date_ecl_id,
    year=@year,
    month=@month,
    day=@day,
    items=^ref_approval)/

-- Assign the approving person
/assigning_approving_person(
    last_name=@last_name,
    first_name=@first_name,
    middle_names=@middle_names,
    prefix_titles=@prefix_titles,
    suffix_titles=@suffix_titles,
    org_id=@org_id,
    org_id_class_name=@org_id_class_name,
    org_id_ecl_id=@org_id_ecl_id,
    authorized_approval=^ref_approval)/

-- Retrieve the various parameters instantiated by above template call
%^ref_person = $assigning_approving_person.person%
%^ref_pers_in_org = $assigning_approving_person.person_in_organization%
%^ref_app_pers_org = $assigning_approving_person.approving_person_organization%
%^ref_org = $assigning_approving_person.organization%

-- Assign the person id
/assigning_identification_with_no_organization(
    id=@person_id,
    id_class_name=@person_id_class_name,
    id_ecl_id=@person_id_ecl_id,
    items=^ref_person)/

-- Assign Ref data to Approval_assignment
/assigning_reference_data(
    items=^ref_approval_assgn,
    class_name=@asn_role,
    ecl_id=@role_ecl_id)/

-- Assign Default Ref data to Approval_person_organization
-- Assumption is that the person providing the concession approval must have the authority to do so.
/assigning_reference_data(
    items=^ref_app_pers_org,
    class_name='Authority_for_approval',
    ecl_id='urn:plcs:rdl:std')/

XML representation of path

<refpath
   template="assigning_concession">
   <comment>
      Note from TJT: This template last worked with Version 1.33 of assigning_approvals edited 2006/1/24 8:39:57
   </comment>
   <comment>
      Fixed mapping path to work with version 1.34 of approvals Date: 2006/04/15 22:10:23
   </comment>
   <comment>
      Figures now also updated
   </comment>
   <comment>
      Call Assigning_approval.
   </comment>
   <call_template
      name="assigning_approval">
      <param_in
         name="status"
         value="@status">
         
      </param_in>
      <param_in
         name="status_ecl_id"
         value="@status_ecl_id">
         
      </param_in>
      <param_in
         name="items"
         value="@items">
         
      </param_in>
   </call_template>
   <comment>
      Get the approval instance from the template call
   </comment>
   <bind
      parameter="ref_approval_assgn">
      <template_instance
         template="assigning_approval"
         parameter="approval_assgn">
         
      </template_instance>
   </bind>
   <bind
      parameter="ref_approval">
      <template_instance
         template="assigning_approval"
         parameter="approval">
         
      </template_instance>
   </bind>
   <comment>
      Assign Ref data to Approval
   </comment>
   <call_template
      name="assigning_reference_data">
      <param_in
         name="items"
         value="^ref_approval">
         
      </param_in>
      <param_in
         name="class_name"
         value="@asn_role">
         
      </param_in>
      <param_in
         name="ecl_id"
         value="@role_ecl_id">
         
      </param_in>
   </call_template>
   <comment>
      Assign the approval date
   </comment>
   <call_template
      name="assigning_calendar_date">
      <param_in
         name="date_class_name"
         value="@date_cn">
         
      </param_in>
      <param_in
         name="date_ecl_id"
         value="@date_ecl_id">
         
      </param_in>
      <param_in
         name="year"
         value="@year">
         
      </param_in>
      <param_in
         name="month"
         value="@month">
         
      </param_in>
      <param_in
         name="day"
         value="@day">
         
      </param_in>
      <param_in
         name="items"
         value="^ref_approval">
         
      </param_in>
   </call_template>
   <comment>
      Assign the approving person
   </comment>
   <call_template
      name="assigning_approving_person">
      <param_in
         name="last_name"
         value="@last_name">
         
      </param_in>
      <param_in
         name="first_name"
         value="@first_name">
         
      </param_in>
      <param_in
         name="middle_names"
         value="@middle_names">
         
      </param_in>
      <param_in
         name="prefix_titles"
         value="@prefix_titles">
         
      </param_in>
      <param_in
         name="suffix_titles"
         value="@suffix_titles">
         
      </param_in>
      <param_in
         name="org_id"
         value="@org_id">
         
      </param_in>
      <param_in
         name="org_id_class_name"
         value="@org_id_class_name">
         
      </param_in>
      <param_in
         name="org_id_ecl_id"
         value="@org_id_ecl_id">
         
      </param_in>
      <param_in
         name="authorized_approval"
         value="^ref_approval">
         
      </param_in>
   </call_template>
   <comment>
      Retrieve the various parameters instantiated by above template call
   </comment>
   <bind
      parameter="ref_person">
      <template_instance
         template="assigning_approving_person"
         parameter="person">
         
      </template_instance>
   </bind>
   <bind
      parameter="ref_pers_in_org">
      <template_instance
         template="assigning_approving_person"
         parameter="person_in_organization">
         
      </template_instance>
   </bind>
   <bind
      parameter="ref_app_pers_org">
      <template_instance
         template="assigning_approving_person"
         parameter="approving_person_organization">
         
      </template_instance>
   </bind>
   <bind
      parameter="ref_org">
      <template_instance
         template="assigning_approving_person"
         parameter="organization">
         
      </template_instance>
   </bind>
   <comment>
      Assign the person id
   </comment>
   <call_template
      name="assigning_identification_with_no_organization">
      <param_in
         name="id"
         value="@person_id">
         
      </param_in>
      <param_in
         name="id_class_name"
         value="@person_id_class_name">
         
      </param_in>
      <param_in
         name="id_ecl_id"
         value="@person_id_ecl_id">
         
      </param_in>
      <param_in
         name="items"
         value="^ref_person">
         
      </param_in>
   </call_template>
   <comment>
      Assign Ref data to Approval_assignment
   </comment>
   <call_template
      name="assigning_reference_data">
      <param_in
         name="items"
         value="^ref_approval_assgn">
         
      </param_in>
      <param_in
         name="class_name"
         value="@asn_role">
         
      </param_in>
      <param_in
         name="ecl_id"
         value="@role_ecl_id">
         
      </param_in>
   </call_template>
   <comment>
      Assign Default Ref data to Approval_person_organization
   </comment>
   <comment>
      Assumption is that the person providing the concession approval must have the authority to do so.
   </comment>
   <call_template
      name="assigning_reference_data">
      <param_in
         name="items"
         value="^ref_app_pers_org">
         
      </param_in>
      <param_in
         name="class_name"
         value="'Authority_for_approval'">
         
      </param_in>
      <param_in
         name="ecl_id"
         value="'urn:plcs:rdl:std'">
         
      </param_in>
   </call_template>
</refpath>