Template:— assigning_address (asg_addr) Date: 2008/02/20 08:05:00
Revision: 1.12

This section specifies the template assigning_address.

NOTE  An explanation of a template and the associated instantiation path is provided in the Template overview section.

Description

This template describes how to assign an address to something.

Model diagrams
The EXPRESS-G diagram in Figure 1 shows the templates and EXPRESS entities that are required to represent the template "assigning_address". The text highlighted in blue shows the template parameters.


Figure 1 —  An EXPRESS-G representation of the information model for assigning_address

Figure 1 —  An EXPRESS-G representation of the information model for assigning_address

The graphic for the template to be used in other EXPRESS-G diagrams is shown in Figure  2 below.


Figure 2 —  
                    The graphical representation of assigning_address template

Figure 2 —   The graphical representation of assigning_address template

Input parameters
The following input parameters are defined for this template:
address_class_name (Type='CLASS')
The name of the class being used to classify the address. This provides the type of address, for example 'office_address'.
The following classes and their sub-classes can be used:
classifications: "Address_assignment" (urn:plcs:rdl:std:Address_assignment)
address_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the definition of the class referenced by the parameter @address_class_name.
name (Type='STRING', Optional)
The name or identifier of the address. Parameter is optional.
street_number (Type='STRING', Optional)
The number of a location on a street. Parameter is optional.
street (Type='STRING', Optional)
The name of a street. Parameter is optional.
postal_box (Type='STRING', Optional)
The number of a postal box. Parameter is optional.
town (Type='STRING', Optional)
The name of a town. Parameter is optional.
region (Type='STRING', Optional)
The name or identifier of a region. Parameter is optional.
postal_code (Type='STRING', Optional)
The code that is used by the country's postal service. Parameter is optional.
country (Type='STRING', Optional)
The name of a country. Parameter is optional.
internal_location (Type='STRING', Optional)
An organization-defined address for internal mail delivery. Parameter is optional.
facsimile_number (Type='STRING', Optional)
The number to which facsimiles may be sent. Parameter is optional.
telephone_number (Type='STRING', Optional)
The number at which telephone calls may be received. Parameter is optional.
electronic_mail_address (Type='STRING', Optional)
The electronic address to which electronic mail may be sent. Parameter is optional.
telex_number (Type='STRING', Optional)
The number where telex messages may be received. Parameter is optional.
url (Type='STRING', Optional)
The text that specifies the Uniform Resource Locator associated with the address. Parameter is optional.
located_pers_org (Type= 'SELECT (organization_or_person_in_organization_select)' )
The items to which the address is assigned
Reference parameters
The following reference parameters are defined for this template:
address(Type='ENTITY (Address)')
Allow the Address entity instantiated in this path to be referenced when this template is used.
Note: The Address entity can be referenced in a template path by:
%^target = $assigning_address.address%
where target is the parameter to which the Address is bound.
address_assgn(Type='ENTITY (Address_assignment)')
Allow the Address_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Address_assignment entity can be referenced in a template path by:
%^target = $assigning_address.address_assgn%
where target is the parameter to which the Address_assignment is bound.
Instantiation path
The instantiation path shown below specifies the entities that are to be instantiated by the template.
A description of templates and the syntax for the instantiation path is provided in the Templates Help/Information section.
-- Instantiate an Address_assignment
Address_assignment

-- Set the Address_assignment attribute type to be ignored
Address_assignment.address_type = '/IGNORE'

-- Bind the Address_assignment to the parameter ^address_assgn.
-- The parameter is a reference parameter so the Address_assignment
-- entity can be referred to when this template is used.
%^address_assgn = Address_assignment%

-- Assign reference data to Address_assignment
/assigning_reference_data(
    items=^address_assgn,
    class_name=@address_class_name,
    ecl_id=@address_ecl_id)/

-- Instantiate and point at an entity Address
Address_assignment.assigned_address -> Address

-- Set the Address attributes
Address.name -> @name
Address.street_number -> @street_number
Address.street -> @street
Address.postal_box -> @postal_box
Address.town -> @town
Address.region -> @region
Address.postal_code -> @postal_code
Address.country -> @country
Address.internal_location -> @internal_location
Address.facsimile_number -> @facsimile_number
Address.telephone_number -> @telephone_number
Address.electronic_mail_address -> @electronic_mail_address
Address.telex_number -> @telex_number
Address.url -> @url

-- Bind the Address entity to the parameter ^address.
-- The parameter is a reference parameter so the Address
-- entity can be referred to when this template is used.
%^address = Address%

-- Assign the Address_assignment
-- to the instances passed into the template through the @located_pers_org
-- input parameter (e.g. a Person)
Address_assignment.located_person_organizations -> @located_pers_org
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Address_assignment.address_type '/IGNORE'
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_address(address_class_name='Office_address', address_ecl_id='urn:plcs:rdl:sample', name='Eurostep's address in Stockholm', street_number='38', street='Vasagatan', postal_box='', town='Stockholm', region='', postal_code='111 20', country='Sweden', internal_location='3rd floor', facsimile_number='+46(8)200399', telephone_number='+46(8)200440', electronic_mail_address='info@eurostep.com', telex_number='', url='www.eurostep.com', located_pers_org='#250')/
(an illustration of the consolidated assigning_address template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by assigning_address template

Figure 3 —  Entities instantiated by assigning_address template

The instance diagram in Figure 4 shows the graphic symbol for the template that is to be used in other instance diagrams. The example template is:
/assigning_address(address_class_name='Office_address', address_ecl_id='urn:plcs:rdl:sample', name='Eurostep's address in Stockholm', street_number='38', street='Vasagatan', postal_box='', town='Stockholm', region='', postal_code='111 20', country='Sweden', internal_location='3rd floor', facsimile_number='+46(8)200399', telephone_number='+46(8)200440', electronic_mail_address='info@eurostep.com', telex_number='', url='www.eurostep.com', located_pers_org='#250')/


Figure 4 —  Instantiation of assigning_address template

Figure 4 —  Instantiation of assigning_address template

Characterizations
The following section details how the assigning_address template can be optionally characterized by assigning other constructs to it. These are characterizations commonly applied to the template. The ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.
The following characterizations may apply:
Characterization Assigning dated effectivity

NOTE   this characterization is optional.

The address of a person or organization may change over time. This is represented by associating a dated effectivity with the assignment of an address where the effectivity represents the period in which the person or organization was at the address.

The dated effectivity is represented by using the template assigning_dated_effectivity to assign a start and end-bound date to an Address_assignment.

© OASIS 2010 — All rights reserved