PK (@Aoa,mimetypeapplication/epub+zipPK(@AiTunesMetadata.plistD artistName Oracle Corporation book-info cover-image-hash 882697394 cover-image-path OEBPS/dcommon/oracle-logo.jpg package-file-hash 591306014 publisher-unique-id E10831-02 unique-id 124431566 genre Oracle Documentation itemName Oracle® Database Sample Schemas, 11g Release 2 (11.2) releaseDate 2010-08-02T15:26:29Z year 2010 PKpIDPK(@AMETA-INF/container.xml PKYuPK(@AOEBPS/scripts.htm Sample Schema Scripts and Object Descriptions

5 Sample Schema Scripts and Object Descriptions

This chapter describes the scripts used to generate the Oracle Database Sample Schemas. It contains the following sections:

About the Scripts

Sample Schemas script directories are located in $ORACLE_HOME/demo/schema. You must install the Oracle Database Examples media to populate the directories with the Sample Schema scripts. Each schema has two primary scripts:

Sample Schemas script directories are located in the $ORACLE_HOME/demo/schema directory after completing the Oracle Database Examples installation.


Note:

This chapter contains only the master script for the entire sample schemas environment. It does not include the scripts for the individual schemas because these scripts are very lengthy.

Master Script

The master script, mksample.sql, sets up the overall Sample Schema environment and creates all the schemas.


Note:

In the master script (mksample.sql), which follows, you will notice variables such as %s_pmPath%, %s_logPath%, and %s_shPath%. These variables are instantiated on installation.

mksample.sql

The text of the mksample.sql script follows:

Rem
Rem $Header: mksample.sql.sbs 02-apr-2003.14:55:17 $
Rem
Rem mksample.sql
Rem
Rem Copyright (c) 2001, 2003, Oracle Corporation. All rights reserved. 
Rem
Rem NAME
Rem mksample.sql - creates all 5 Sample Schemas
Rem
Rem DESCRIPTION
Rem This script rees and creates all Schemas belonging
Rem to the Oracle Database 10g Sample Schemas.
Rem If you are unsure about the prerequisites for the Sample Schemas,
Rem please use the Database Configuration Assistant DBCA to
Rem configure the Sample Schemas.
Rem
Rem NOTES
Rem - OUI instantiates this script during install and saves it
Rem as mksample.sql. The instantiated scripts matches
Rem the directory structure on your system
Rem - Tablespace EXAMPLE created with:
Rem CREATE TABLESPACE example 
Rem NOLOGGING 
Rem DATAFILE '<filename>' SIZE 150M REUSE 
Rem AUTOEXTEND ON NEXT 640k
Rem MAXSIZE UNLIMITED
Rem EXTENT MANAGEMENT LOCAL
Rem SEGMENT SPACE MANAGEMENT AUTO;
Rem 
Rem - CAUTION: This script will erase the following schemas:
Rem - HR
Rem - OE
Rem - PM
Rem - SH
Rem - IX
Rem - BI
Rem - CAUTION: Never use the preceding Sample Schemas for
Rem anything other than demos and examples
Rem - USAGE: To return the Sample Schemas to their initial 
Rem state, you can call this script and pass the passwords
Rem for SYS, SYSTEM and the schemas as parameters.
Rem Example: @?/demo/schema/mksample mgr secure h1 o2 p3 q4 s5
Rem (please choose your own passwords for security purposes)
Rem
Rem MODIFIED (MM/DD/YY)
Rem 
Rem

SET FEEDBACK 1
SET NUMWIDTH 10
SET LINESIZE 80
SET TRIMSPOOL ON
SET TAB OFF
SET PAGESIZE 999
SET ECHO OFF
SET CONCAT '.'
SET SHOWMODE OFF

PROMPT 
PROMPT specify password for SYSTEM as parameter 1:
DEFINE password_system = &1
PROMPT 
PROMPT specify password for SYS as parameter 2:
DEFINE password_sys = &2
PROMPT 
PROMPT specify password for HR as parameter 3:
DEFINE password_hr = &3
PROMPT
PROMPT specify password for OE as parameter 4:
DEFINE password_oe = &4
PROMPT
PROMPT specify password for PM as parameter 5:
DEFINE password_pm = &5
PROMPT
PROMPT specify password for IX as parameter 6:
DEFINE password_ix = &6
PROMPT
PROMPT specify password for SH as parameter 7:
DEFINE password_sh = &7
PROMPT 
PROMPT specify password for BI as parameter 8:
DEFINE password_bi = &8
PROMPT 
PROMPT specify default tablespace as parameter 9:
DEFINE default_ts = &9
PROMPT
PROMPT specify temporary tablespace as parameter 10:
DEFINE temp_ts = &10
PROMPT 
PROMPT specify log file directory (including trailing delimiter) as parameter
 11:
DEFINE logfile_dir = &11
PROMPT 
PROMPT Sample Schemas are being created ...
PROMPT
DEFINE vrs = v3

CONNECT system/&&password_system

DROP USER hr CASCADE;
DROP USER oe CASCADE;
DROP USER pm CASCADE;
DROP USER ix CASCADE;
DROP USER sh CASCADE;
DROP USER bi CASCADE;

CONNECT system/&&password_system

SET SHOWMODE OFF

@?/demo/schema/human_resources/hr_main.sql &&password_hr &&default_ts &&temp_ts
 &&password_sys &&logfile_dir

CONNECT system/&&password_system
SET SHOWMODE OFF

@?/demo/schema/order_entry/oe_main.sql &&password_oe &&default_ts &&temp_ts
 &&password_hr &&password_sys %s_oePath% &&logfile_dir &vrs

CONNECT system/&&password_system
SET SHOWMODE OFF

@?/demo/schema/product_media/pm_main.sql &&password_pm &&default_ts &&temp_ts
 &&password_oe &&password_sys %s_pmPath% &&logfile_dir %s_pmPath%

CONNECT system/&&password_system
SET SHOWMODE OFF

@?/demo/schema/info_exchange/ix_main.sql &&password_ix &&default_ts &&temp_ts
 &&password_sys &&logfile_dir &vrs

CONNECT system/&&password_system
SET SHOWMODE OFF

@?/demo/schema/sales_history/sh_main &&password_sh &&default_ts &&temp_ts
 &&password_sys %s_shPath% &&logfile_dir &vrs

CONNECT system/&&password_system
SET SHOWMODE OFF

@?/demo/schema/bus_intelligence/bi_main &&password_bi &&default_ts &&temp_ts
 &&password_sys &&password_oe &&password_sh &&logfile_dir &vrs

CONNECT system/&&password_system

SPOOL OFF

DEFINE veri_spool = &&logfile_dir.mkverify_&vrs..log

@?/demo/schema/mkverify &&password_system &veri_spool 

EXIT

HR Schema

This section lists the names of the scripts that create the human resources (HR) schema and describes the objects in the schema. Table 5-1 lists the HR scripts in alphabetical order, while Table 5-2 lists its objects.

Table 5-1 HR Schema Scripts

Script NameDescription

hr_analz.sql

Collects statistics on the tables in the schema

hr_code.sql

Creates procedural objects in the schema

hr_comnt.sql

Creates comments for each object in the schema

hr_cre.sql

Creates the HR objects

hr_dn_c.sql

Adds the distinguished name column used by Oracle Internet Directory to the employees and departments tables

hr_dn_d.sql

Drops the Oracle Internet Directory distinguished name column from employees and departments

hr_drop.sql

Drops the HR schema and all its objects

hr_idx.sql

Creates indexes on the HR tables

hr_main.sql

Main script for the HR schema; calls other scripts

hr_popul.sql

Populates the objects


Table 5-2 HR Objects

Object TypeObjects

Index

COUNTRY_C_ID_PK, DEPT_ID_PK, DEPT_LOCATION_IX, EMP_DEPARTMENT_IX, EMP_EMAIL_UK, EMP_EMP_ID_PK, EMP_JOB_IX, EMP_MANAGER_IX, EMP_NAME_IX, JHIST_DEPARTMENT_IX, JHIST_EMPLOYEE_IX, JHIST_EMP_ID_ST_DATE_PK, JHIST_JOB_IX, JOB_ID_PK, LOC_CITY_IX, LOC_COUNTRY_IX, LOC_ID_PK, LOC_STATE_PROVINCE_IX, REG_ID_PK

Procedure

ADD_JOB_HISTORY, SECURE_DML

Sequence

DEPARTMENTS_SEQ, EMPLOYEES_SEQ, LOCATIONS_SEQ

Table

COUNTRIES, DEPARTMENTS, EMPLOYEES, JOBS, JOB_HISTORY, LOCATIONS, REGIONS

Trigger

SECURE_EMPLOYEES, UPDATE_JOB_HISTORY

View

EMP_DETAILS_VIEW


HR Table Descriptions

This section describes the columns of each table of the HR schema, as follows:

Table 5-3 HR.COUNTRIES Table Description

Column NameNull?Type

COUNTRY_ID

NOT NULL

CHAR(2)

COUNTRY_NAME

 


VARCHAR2(40)

REGION_ID

 


NUMBER


Table 5-4 HR.DEPARTMENTS Table Description

Column NameNull?Type

DEPARTMENT_ID

NOT NULL

NUMBER(4)

DEPARTMENT_NAME

NOT NULL

VARCHAR2(30)

MANAGER_ID

 


NUMBER(6)

LOCATION_ID

 


NUMBER(4)


Table 5-5 HR.EMPLOYEES Table Description

Column NameNull?Type

EMPLOYEE_ID

NOT NULL

NUMBER(6)

FIRST_NAME

 


VARCHAR2(20)

LAST_NAME

NOT NULL

VARCHAR2(25)

EMAIL

NOT NULL

VARCHAR2(20)

PHONE_NUMBER

 


VARCHAR2(20)

HIRE_DATE

NOT NULL

DATE

JOB_ID

NOT NULL

VARCHAR2(10)

SALARY

 


NUMBER(8,2)

COMMISSION_PCT

 


NUMBER(2,2)

MANAGER_ID

 


NUMBER(6)

DEPARTMENT_ID

 


NUMBER(4)


Table 5-6 HR.JOBS Table Description

Column NameNull?Type

JOB_ID

NOT NULL

VARCHAR2(10)

JOB_TITLE

NOT NULL

VARCHAR2(35)

MIN_SALARY

 


NUMBER(6)

MAX_SALARY

 


NUMBER(6)


Table 5-7 HR.JOB_HISTORY Table Description

Column NameNull?Type

EMPLOYEE_ID

NOT NULL

NUMBER(6)

START_DATE

NOT NULL

DATE

END_DATE

NOT NULL

DATE

JOB_ID

NOT NULL

VARCHAR2(10)

DEPARTMENT_ID

 


NUMBER(4)


Table 5-8 HR.LOCATIONS Table Description

Column NameNull?Type

LOCATION_ID

NOT NULL

NUMBER(4)

STREET_ADDRESS

 


VARCHAR2(40)

POSTAL_CODE

 


VARCHAR2(12)

CITY

NOT NULL

VARCHAR2(30)

STATE_PROVINCE

 


VARCHAR2(25)

COUNTRY_ID

 


CHAR(2)


Table 5-9 HR.REGIONS Table Description

Column NameNull?Type

REGION_ID

NOT NULL

NUMBER

REGION_NAME

 


VARCHAR2(25)


OE Schema

This section lists the names of the scripts that create the Order Entry (OE) schema and describes the objects in the schema. Table 5-10 lists the OE scripts in alphabetical order, while Table 5-11 lists its objects. Note that language-specific statements for product names and descriptions are stored in these files (each representing a different language): INSERToe_p_us.sqloe_p_ar.sql, oe_p_cs.sql, oe_p_d.sql, oe_p_dk.sql, oe_p_e.sql, oe_p_el.sql, oe_p_esa.sql, oe_p_f.sql, oe_p_frc.sql, oe_p_hu.sql, oe_p_i.sql, oe_p_iw.sql, oe_p_ja.sql, oe_p_ko.sql, oe_p_n.sql, oe_p_nl.sql, oe_p_pl.sql, oe_p_pt.sql, oe_p_ptb.sql, oe_p_ro.sql, oe_p_ru.sql, oe_p_s.sql, oe_p_sf.sql, oe_p_sk.sql, oe_p_th.sql, oe_p_tr.sql, oe_p_zhs.sql, oe_p_zht.sql.

Table 5-10 OE Schema Scripts

Script NameDescription

oc_comnt.sql

Adds comments to the online catalog (OC) subschema wherever possible

oc_cre.sql

Creates the OC subschema

oc_drop.sql

Drops the OC subschema

oc_main.sql

Main script for the OC subschema

oc_popul.sqla

Populates the object tables

oe_analz.sql

Gathers statistics on the OE objects

oe_comnt.sql

Creates comments for the objects in the schema

oe_cre.sql

Creates the OE objects

oe_drop.sql

Drops the OE schema and all its objects

oe_idx.sql

Creates indexes on the OE tables

oe_main.sql

Main script for the OE schema; calls other scripts

oe_views.sql

Creates the OE schema views


Table 5-11 HR Objects

Object TypeObjects

Index

CUSTOMERS_PK, CUST_ACCOUNT_MANAGER_IX, CUST_EMAIL_IX, CUST_LNAME_IX, CUST_UPPER_NAME_IX, INVENTORY_IX, INV_PRODUCT_IX, ITEM_ORDER_IX, ITEM_PRODUCT_IX, ORDER_ITEMS_PK, ORDER_ITEMS_UK, ORDER_PK, ORD_CUSTOMER_IX, ORD_ORDER_DATE_IX, ORD_SALES_REP_IX, PRD_DESC_PK, PRODUCT_INFORMATION_PK, PROD_NAME_IX, PROD_SUPPLIER_IX, PROMO_ID_PK, REFERENCE_IS_UNIQUE, SYS_C003584, SYS_C003587, SYS_C003588, SYS_C003589, SYS_C003590, WAREHOUSES_PK, WHS_LOCATION_IX

Function

GET_PHONE_NUMBER_F

Sequence

ORDERS_SEQ

Lob

SYS_LOB0000045843C00022$$, SYS_LOB0000045843C00023$$, SYS_LOB0000045852C00003$$, SYS_LOB0000045852C00012$$, SYS_LOB0000045852C00013$$, SYS_LOB0000046019C00004$$, SYS_LOB0000046019C00005$$, SYS_LOB0000046019C00007$$, SYS_LOB0000046019C00011$$, SYS_LOB0000046019C00012$$, SYS_LOB0000046019C00015$$, SYS_LOB0000046019C00024$$, SYS_LOB0000046019C00031$$, SYS_LOB0000046019C00032$$, SYS_LOB0000046044C00003$$

Synonym

COUNTRIES, DEPARTMENTS, EMPLOYEES, JOBS, JOB_HISTORY, LOCATIONS

Table

CUSTOMERS, INVENTORIES, ORDERS, ORDER_ITEMS, PRODUCT_DESCRIPTIONS, PRODUCT_INFORMATION, WAREHOUSES

Trigger

INSERT_ORD_LINE, ORDERS_ITEMS_TRG, ORDERS_TRG

Type

CATALOG_TYP, CATEGORY_TYP, COMPOSITE_CATEGORY_TYP, CORPORATE_CUSTOMER_TYP, CUSTOMER_TYP, CUST_ADDRESS_TYP, INVENTORY_LIST_TYP, INVENTORY_TYP, LEAF_CATEGORY_TYP, ORDER_ITEM_LIST_TYP, ORDER_ITEM_TYP, ORDER_LIST_TYP, ORDER_TYP, PHONE_LIST_TYP, PRODUCT_INFORMATION_TYP, PRODUCT_REF_LIST_TYP, SUBCATEGORY_REF_LIST_TYP, SYS_YOID0000046073$, SYS_YOID0000046075$, SYS_YOID0000046077$, SYS_YOID0000046079$, SYS_YOID0000046081$, WAREHOUSE_TYP, XDBPO_ACTIONS_TYPE, XDBPO_ACTION_COLLECTION, XDBPO_ACTION_TYPE, XDBPO_LINEITEMS_TYPE, XDBPO_LINEITEM_COLLECTION, XDBPO_LINEITEM_TYPE, XDBPO_PART_TYPE, XDBPO_REJECTION_TYPE, XDBPO_SHIPINSTRUCTIONS_TYPE, XDBPO_TYPE

Type Body

CATALOG_TYP, COMPOSITE_CATEGORY_TYP, LEAF_CATEGORY_TYP

View

ACCOUNT_MANAGERS, BOMBAY_INVENTORY, CUSTOMERS_VIEW, DEPTVIEW, OC_CORPORATE_CUSTOMERS, OC_CUSTOMERS, OC_INVENTORIES, OC_ORDERS, OC_PRODUCT_INFORMATION, ORDERS_VIEW, PRODUCTS, PRODUCT_PRICES, SYDNEY_INVENTORY, TORONTO_INVENTORY


OE Table Descriptions

This section describes the columns of each table of the OE schema, as follows:

Table 5-12 OE.CUSTOMERS Table Description

Column NameNull?Type

CUSTOMER_ID

NOT NULL

NUMBER(6)

CUST_FIRST_NAME

NOT NULL

VARCHAR2(20)

CUST_LAST_NAME

NOT NULL

VARCHAR2(20)

CUST_ADDRESS

 


CUST_ADDRESS_TYP

PHONE_NUMBERS

 


PHONE_LIST_TYP

NLS_LANGUAGE

 


VARCHAR2(3)

NLS_TERRITORY

 


VARCHAR2(30)

CREDIT_LIMIT

 


NUMBER(9,2)

CUST_EMAIL

 


VARCHAR2(30)

ACCOUNT_MGR_ID

 


NUMBER(6)

CUST_GEO_LOCATION

 


MDSYS.SDO_GEOMETRY

DATE_OF_BIRTH

 


DATE

MARITAL_STATUS

 


VARCHAR2(20)

GENDER

 


VARCHAR2(1)

INCOME_LEVEL

 


VARCHAR2(20)


Table 5-13 OE.INVENTORIES Table Description

Column NameNull?Type

PRODUCT_ID

NOT NULL

NUMBER(6)

WAREHOUSE_ID

NOT NULL

NUMBER(3)

QUANTITY_ON_HAND

NOT NULL

NUMBER(8)


Table 5-14 OE.ORDERS Table Description

Column NameNull?Type

ORDER_ID

NOT NULL

NUMBER(12)

ORDER_DATE

NOT NULL

TIMESTAMP(6) WITH LOCAL TIME ZONE

ORDER_MODE

 


VARCHAR2(8)

CUSTOMER_ID

NOT NULL

NUMBER(6)

ORDER_STATUS

 


NUMBER(2)

ORDER_TOTAL

 


NUMBER(8,2)

SALES_REP_ID

 


NUMBER(6)

PROMOTION_ID

 


NUMBER(6)


Table 5-15 OE.ORDER_ITEMS Table Description

Column NameNull?Type

ORDER_ID

NOT NULL

NUMBER(12)

LINE_ITEM_ID

NOT NULL

NUMBER(3)

PRODUCT_ID

NOT NULL

NUMBER(6)

UNIT_PRICE

 


NUMBER(8,2)

QUANTITY

 


NUMBER(8)


Table 5-16 OE.PRODUCT_DESCRIPTIONS Table Description

Column NameNull?Type

PRODUCT_ID

NOT NULL

NUMBER(6)

LANGUAGE_ID

NOT NULL

VARCHAR2(3)

TRANSLATED_NAME

NOT NULL

NVARCHAR2(50)

TRANSLATED_DESCRIPTION

NOT NULL

NVARCHAR2(2000)


Table 5-17 OE.PRODUCT_INFORMATION Table Description

<tr align="left" valign="top">
Column NameNull?Type

PRODUCT_ID

NOT NULL

NUMBER(6)

PRODUCT_NAME

 


VARCHAR2(50)

PRODUCT_DESCRIPTION

 


VARCHAR2(2000)

CATEGORY_ID

 


NUMBER(2)

WEIGHT_CLASS

 


NUMBER(1)

WARRANTY_PERIOD

 


INTERVAL YEAR(2) TO MONTH

SUPPLIER_ID

 


NUMBER(6))

PRODUCT_STATUS

 


VARCHAR2(20)

LIST_PRICE

 


NUMBER(8,2)

MIN_PRICE

 


NUMBER(8,2)

CATALOG_URL

 


VARCHAR2(50)


Table 5-18 OE.WAREHOUSES Table Description

Column NameNull?Type

WAREHOUSE_ID

NOT NULL

NUMBER(3)

WAREHOUSE_SPEC

 


SYS.XMLTYPE

WAREHOUSE_NAME

 


VARCHAR2(35)

LOCATION_ID

 


NUMBER(4)

WH_GEO_LOCATION

 


MDSYS.SDO_GEOMETRY


PM Schema

This section lists the names of the scripts that create the Product Media (PM) schema and describes the objects in the schema. Table 5-19 lists the OE scripts in alphabetical order, while Table 5-20 lists its objects. Note that the SQL*Loader data file pm_p_lob.dat contains hard-coded absolute path names that have been set during installation. Before attempting to load the data in a different environment, you should first edit the path names in this file.

Table 5-19 PM Schema Scripts

Script NameDescription

pm_analz.sql

Gathers statistics on the PM objects

pm_cre.sql

Creates the PM objects

pm_drop.sql

Drops the PM schema and all its objects

pm_p_ord.sql, pm_p_lob.sql, pm_p_lob.ctl, pm_p_lob.dat

Populates the objects in the schema

pm_main.sql

Main script for the PM schema that calls other scripts


Table 5-20 PM Objects

Object TypeObjects

Index

ONLINEMEDIA_PK, PRINTMEDIA_PK, SYS_C003538

Lob

SYS_LOB0000045882C00003$$, SYS_LOB0000045882C00017$$, SYS_LOB0000045882C00019$$, SYS_LOB0000045882C00034$$, SYS_LOB0000045882C00042$$, SYS_LOB0000045882C00054$$, SYS_LOB0000045882C00062$$, SYS_LOB0000045882C00069$$, SYS_LOB0000045882C00071$$, SYS_LOB0000045882C00080$$, SYS_LOB0000045907C00003$$, SYS_LOB0000045907C00004$$, SYS_LOB0000045907C00005$$, SYS_LOB0000045907C00006$$, SYS_LOB0000045907C00009$$, SYS_LOB0000045907C00015$$, SYS_LOB0000045908C00004$$

Table

ONLINE_MEDIA, PRINT_MEDIA

Type

ADHEADER_TYP, TEXTDOC_TAB, TEXTDOC_TYP


PM Table Descriptions

This section describes the columns of each table of the PM schema, as follows:

Table 5-21 PM.ONLINE_MEDIA Table Description

Column NameNull?Type

PRODUCT_ID

NOT NULL

NUMBER(6)

PRODUCT_PHOTO

 


ORDSYS.ORDIMAGE

PRODUCT_PHOTO_SIGNATURE

 


ORDSYS.ORDIMAGESIGNATURE

This type, ORDImageSignature, is deprecated; do not use it in new code. Existing occurrences of this object type will continue to function as in the past.

PRODUCT_THUMBNAIL

 


ORDSYS.ORDIMAGE

PRODUCT_VIDEO

 


ORDSYS.ORDVIDEO

PRODUCT_AUDIO

 


ORDSYS.ORDAUDIO

PRODUCT_TEXT

 


CLOB

PRODUCT_TESTIMONIALS

 


ORDSYS.ORDDOC


Table 5-22 PM.PRINT_MEDIA Table Description

Column NameNull?Type

PRODUCT_ID

NOT NULL

NUMBER(6)

AD_ID

NOT NULL

NUMBER(6)

AD_COMPOSITE

 


BLOB

AD_SOURCETEXT

 


CLOB

AD_FINALTEXT

 


CLOB

AD_FLTEXTN

 


NCLOBO

AD_TEXTDOCS_NTAB

 


TEXTDOC_TAB

AD_PHOTO

 


BLOB

AD_GRAPHIC

 


BINARY FILE LOB

AD_HEADER

 


ADHEADER_TYP


IX Schema

This section lists the names of the scripts that create the Information Exchange (IX) schema group and describes the objects in the schemas. Table 5-23 lists the IX scripts in alphabetical order, while Table 5-24 lists its objects.

Table 5-23 Information Exchange (IX) Schema Scripts

Script NameDescription

cix_v3.sql

Creates the IX schema objects

dix_v3.sql

Drops the IX schema objects

ix_main.sql

Main script for the IX schema; calls other scripts

vix_v3.sql

Enables, disables, and verifies IX objects


Table 5-24 IX Objects

Object TypeObjects

Evaluation Context

AQ$_ORDERS_QUEUETABLE_V, AQ$_STREAMS_QUEUE_TABLE_V

Index

SYS_C003540, SYS_C003543, SYS_C003548, SYS_C003551, SYS_IOT_TOP_45932, SYS_IOT_TOP_45934, SYS_IOT_TOP_45936, SYS_IOT_TOP_45939, SYS_IOT_TOP_45949, SYS_IOT_TOP_45951, SYS_IOT_TOP_45953, SYS_IOT_TOP_45956

Lob

SYS_LOB0000045926C00036$$, SYS_LOB0000045941C00028$$, SYS_LOB0000045941C00029$$

Queue

AQ$_ORDERS_QUEUETABLE_E, AQ$_STREAMS_QUEUE_TABLE_E, ORDERS_QUEUE, STREAMS_QUEUE

Rule Set

ORDERS_QUEUE_N, ORDERS_QUEUE_R, STREAMS_QUEUE_N, STREAMS_QUEUE_R

Sequence

AQ$_ORDERS_QUEUETABLE_N, AQ$_STREAMS_QUEUE_TABLE_N

Table

ORDERS_QUEUETABLE, STREAMS_QUEUE_TABLE

Type

ORDER_EVENT_TYP

View

AQ$ORDERS_QUEUETABLE, AQ$ORDERS_QUEUETABLE_R, AQ$ORDERS_QUEUETABLE_S, AQ$STREAMS_QUEUE_TABLE, AQ$STREAMS_QUEUE_TABLE_R, AQ$STREAMS_QUEUE_TABLE_S


IX Table Descriptions

This section describes the columns of each table of the IX schema, as follows:

Table 5-25 IX.ORDERS_QUEUETABLE Table Description

Column NameNull?Type

Q_NAME

 


VARCHAR2(30)

MSGID

NOT NULL

RAW(16)

CORRID

 


VARCHAR2(128)

PRIORITY

 


NUMBER

STATE

 


NUMBER

DELAY

 


TIMESTAMP(6)

EXPIRATION

 


NUMBER

TIME_MANAGER_INFO

 


TIMESTAMP(6)

LOCAL_ORDER_NO

 


NUMBER

CHAIN_NO

 


NUMBER

CSCN

 


NUMBER

DSCN

 


NUMBER

ENQ_TIME

 


TIMESTAMP(6)

ENQ_UID

 


VARCHAR2(30)

ENQ_TID

 


VARCHAR2(30)

DEQ_TIME

 


TIMESTAMP(6)

EEQ_UID

 


VARCHAR2(30)

DEQ_TID

 


VARCHAR2(30)

RETRY_COUNT

 


NUMBER

EXCEPTION_QSCHEMA

 


VARCHAR2(30)

EXCEPTION_QUEUE

 


VARCHAR2(30)

STEP_NO

 


NUMBER

RECIPIENT_KEY

 


NUMBER

DEQUEUE_MSGID

 


RAW(16)

SENDER_NAME

 


VARCHAR2(30)

SENDER_ADDRESS

 


VARCHAR2(1024)

SENDER_PROTOCOL

 


NUMBER

USER_DATA

 


ORDER_EVENT_TYP

USER_PROP

 


SYS.ANYDATA


Table 5-26 IX.STREAMS_QUEUE_TABLE Table Description

Column NameNull?Type

Q_NAME

 


VARCHAR2(30)

MSGID

NOT NULL

RAW(16)

CORRID

 


VARCHAR2(128)

PRIORITY

 


NUMBER

STATE

 


NUMBER

DELAY

 


TIMESTAMP(6)

EXPIRATION

 


NUMBER

TIME_MANAGER_INFO

 


TIMESTAMP(6)

LOCAL_ORDER_NO

 


NUMBER

CHAIN_NO

 


NUMBER

CSCN

 


NUMBER

DSCN

 


NUMBER

ENQ_TIME

 


TIMESTAMP(6)

ENQ_UID

 


VARCHAR2(30)

ENQ_TID

 


VARCHAR2(30)

DEQ_TIME

 


TIMESTAMP(6)

EEQ_UID

 


VARCHAR2(30)

DEQ_TID

 


VARCHAR2(30)

RETRY_COUNT

 


NUMBER

EXCEPTION_QSCHEMA

 


VARCHAR2(30)

EXCEPTION_QUEUE

 


VARCHAR2(30)

STEP_NO

 


NUMBER

RECIPIENT_KEY

 


NUMBER

DEQUEUE_MSGID

 


RAW(16)

SENDER_NAME

 


VARCHAR2(30)

SENDER_ADDRESS

 


VARCHAR2(1024)

SENDER_PROTOCOL

 


NUMBER

USER_DATA

 


ORDER_EVENT_TYP

USER_PROP

 


SYS.ANYDATA


SH Schema

This section lists the names of the scripts that create the Sales History (SH) schema and describes the objects in the schema. Table 5-27 lists the SH scripts in alphabetical order, while Table 5-28 lists its objects.

Table 5-27 SH Schema Scripts

Script NameDescription

sh_analz.sql

Gathers statistics on the schema objects

sh_comnt.sql

Creates comments for the objects in the schema

sh_cons.sql

Modifies constraints on objects in the schema

sh_cre.sql

Creates the objects in the schema

sh_cremv.sql

Creates materialized views and bitmapped indexes

sh_drop.sql

Drops the SH schema and all its objects

sh_idx.sql

Creates indexes on tables in the schema

sh_main.sql

Main script for the SH schema; calls other scripts

olp_v3.sql

Creates dimensions and hierarchies used by the OLAP server

sh_olp_d.sql

Drops the objects used by the OLAP server


Table 5-28 SH Objects

Object TypeObjects

Dimension

CHANNELS_DIM, CUSTOMERS_DIM, PRODUCTS_DIM, PROMOTIONS_DIM, TIMES_DIM

Index

CHANNELS_PK, COSTS_PROD_BIX, COSTS_TIME_BIX, COUNTRIES_PK, CUSTOMERS_GENDER_BIX, CUSTOMERS_MARITAL_BIX, CUSTOMERS_PK, CUSTOMERS_YOB_BIX, DR$SUP_TEXT_IDX$X, FW_PSC_S_MV_CHAN_BIX, FW_PSC_S_MV_PROMO_BIX, FW_PSC_S_MV_SUBCAT_BIX, FW_PSC_S_MV_WD_BIX, PRODUCTS_PK, PRODUCTS_PROD_CAT_IX, PRODUCTS_PROD_STATUS_BIX, PRODUCTS_PROD_SUBCAT_IX, PROMO_PK, SALES_CHANNEL_BIX, SALES_CUST_BIX, SALES_PROD_BIX, SALES_PROMO_BIX, SALES_TIME_BIX, SUP_TEXT_IDX, SYS_IOT_TOP_45927, SYS_IOT_TOP_45932, TIMES_PK

Index Partition

COSTS_PROD_BIX, COSTS_TIME_BIX, SALES_CHANNEL_BIX, SALES_CUST_BIX, SALES_PROD_BIX, SALES_PROMO_BIX, SALES_TIME_BIX

Lob

SYS_LOB0000045924C00006$$, SYS_LOB0000045929C00002$$

Materialized View

CAL_MONTH_SALES_MV, FWEEK_PSCAT_SALES_MV

Table

CHANNELS, COSTS, COUNTRIES, CUSTOMERS, PRODUCTS, PROMOTIONS, SALES, TIMES

Table Partition

COSTS, SALES

View

PROFITS


SH Table Descriptions

This section describes the columns of each table of the IX schema, as follows:

Table 5-29 SH.CHANNELS Table Description

Column NameNull?Type

CHANNEL_ID

NOT NULL

NUMBER

CHANNEL_DESC

NOT NULL

VARCHAR2(20)

CHANNEL_CLASS

NOT NULL

VARCHAR2(20)

CHANNEL_CLASS_ID

NOT NULL

NUMBER

CHANNEL_TOTAL

NOT NULL

VARCHAR2(13)

CHANNEL_TOTAL_ID

NOT NULL

NUMBER


Table 5-30 SH.COSTS Table Description

Column NameNull?Type

PROD_ID

NOT NULL

NUMBER

TIME_DESC

NOT NULL

DATE

PROMO_ID

NOT NULL

NUMBER

CHANNEL_ID

NOT NULL

NUMBER

UNIT_COST

NOT NULL

NUMBER(10,2)

UNIT_PRICE

NOT NULL

NUMBER(10,2)


Table 5-31 SH.COUNTRIES Table Description

Column NameNull?Type

COUNTRY_ID

NOT NULL

NUMBER

COUNTRY_ISO_CODE

NOT NULL

CHAR(2)

COUNTRY_NAME

NOT NULL

VARCHAR2(40)

COUNTRY_SUBREGION

NOT NULL

VARCHAR2(30)

COUNTRY_SUBREGION_ID

NOT NULL

NUMBER

COUNTRY_REGION

NOT NULL

VARCHAR2(20)

COUNTRY_REGION_ID

NOT NULL

NUMBER

COUNTRY_TOTAL

NOT NULL

VARCHAR2(11)

COUNTRY_TOTAL_ID

NOT NULL

NUMBER

COUNTRY_NAME_HIST

 


VARCHAR2(40)


Table 5-32 SH.CUSTOMERS Table Description

Column NameNull?Type

CUST_ID

NOT NULL

NUMBER

CUST_FIRST_NAME

NOT NULL

VARCHAR2(20)

CUST_LAST_NAME

NOT NULL

VARCHAR2(40)

CUST_GENDER

NOT NULL

CHAR(1)

CUST_YEAR_OF_BIRTH

NOT NULL

NUMBER(4)

CUST_MARITAL_STATUS

 


VARCHAR2(20)

CUST_STREET_ADDRESS

NOT NULL

VARCHAR2(40)

CUST_POSTAL_CODE

NOT NULL

VARCHAR2(10)

CUST_CITY

NOT NULL

VARCHAR2(30)

CUST_CITY_ID

NOT NULL

NUMBER

CUST_STATE_PROVINCE

NOT NULL

VARCHAR2(40)

CUST_STATE_PROVINCE_ID

NOT NULL

NUMBER

COUNTRY_ID

NOT NULL

NUMBER

CUST_MAIN_PHONE_NUMBER

NOT NULL

VARCHAR2(25)

CUST_INCOME_LEVEL

 


VARCHAR2(30)

CUST_CREDIT_LIMIT

 


NUMBER

CUST_EMAIL

 


VARCHAR2(30)

CUST_TOTAL

NOT NULL

VARCHAR2(14)

CUST_TOTAL_ID

NOT NULL

NUMBER

CUST_SRC_ID

 


NUMBER

CUST_EFF_FROM

 


DATE

CUST_EFF_TO

 


DATE

CUST_VALID

 


VARCHAR2(1)


Table 5-33 SH.PRODUCTS Table Description

Column NameNull?Type

PROD_ID

NOT NULL

NUMBER(6)

PROD_NAME

NOT NULL

VARCHAR2(50)

PROD_DESC

NOT NULL

VARCHAR2(4000)

PROD_SUBCATEGORY

NOT NULL

VARCHAR2(50)

PROD_SUBCATEGORY_ID

NOT NULL

NUMBER

PROD_SUBCATEGORY_DESC

NOT NULL

VARCHAR2(2000)

PROD_CATEGORY

NOT NULL

VARCHAR2(50)

PRD_CATEGORY_ID

NOT NULL

NUMBER

PROD_CATEGORY_DESC

NOT NULL

VARCHAR2(2000)

PROD_WEIGHT_CLASS

NOT NULL

NUMBER(3)

PROD_UNIT_OF_MEASURE

 


VARCHAR2(20)

PRD_PACK_SIZE

NOT NULL

VARCHAR2(30)

PROD_SUPPLIER_ID

NOT NULL

NUMBER(6)

PROD_STATUS

NOT NULL

VARCHAR2(20)

PROD_LIST_PRICE

NOT NULL

NUMBER(8,2)

PRD_MIN_PRICE

NOT NULL

NUMBER(8,2)

PROD_TOTAL

NOT NULL

VARCHAR2(13)

PROD_TOTAL_ID

NOT NULL

NUMBER

PROD_SRC_ID

 


NUMBER

PRD_EFF_FROM

 


DATE

PROD_EFF_TO

 


DATE

PROD_VALID

 


VARCHAR2(1)


Table 5-34 SH.PROMOTIONS Table Description

Column NameNull?Type

PROMO_ID

NOT NULL

NUMBER(6)

PROMO_NAME

NOT NULL

VARCHAR2(30)

PROMO_SUBCATEGORY

NOT NULL

VARCHAR2(30)

PROMO_SUBCATEGORY_ID

NOT NULL

NUMBER

PROMO_CATEGORY

NOT NULL

VARCHAR2(30)

PRMO_CATEGORY_ID

NOT NULL

NUMBER

PROMO_COST

NOT NULL

NUMBER(10,2)

PROMO_BEGIN_DATE

NOT NULL

DATE

PROMO_END_DATE

NOT NULL

DATE

PROMO_TOTAL

NOT NULL

VARCHAR2(15)

PROMO_TOTAL_ID

NOT NULL

NUMBER


Table 5-35 SH.SALES Table Description

Column NameNull?Type

PROD_ID

NOT NULL

NUMBER

CUST_ID

NOT NULL

NUMBER

TIME_ID

NOT NULL

DATE

CHANNEL_ID

NOT NULL

NUMBER

PROMO_ID

NOT NULL

NUMBER

QUANTITY_SOLD

NOT NULL

NUMBER(10,2)

AMOUNT_SOLD

NOT NULL

NUMBER(10,2)


Table 5-36 SH.TIMES Table Description

Column NameNull?Type

TIME_ID

NOT NULL

DATE

DAY_NAME

NOT NULL

VARCHAR2(9)

DAY_NUMBER_IN_WEEK

NOT NULL

NUMBER(1)

DAY_NUMBER_IN_MONTH

NOT NULL

NUMBER(2)

CALENDAR_WEEK_NUMBER

NOT NULL

NUMBER(2)

FISCAL_WEEK_NUMBER

NOT NULL

NUMBER(2)

WEEK_ENDING_DAY

NOT NULL

DATE

WEEK_ENDING_DAY_ID

NOT NULL

NUMBER

CALENDAR_MONTH_NUMBER

NOT NULL

NUMBER(2)

FISCAL_MONTH_NUMBER

NOT NULL

NUMBER(2)

CALENDAR_MONTH_DESC

NOT NULL

VARCHAR2(8)

CALENDAR_MONTH_ID

NOT NULL

NUMBER

FISCAL_MONTH_DESC

NOT NULL

VARCHAR2(8)

FISCAL_MONTH_ID

NOT NULL

NUMBER

J"

DAYS_IN_CAL_MONTH

NOT NULL

NUMBER

DAYS_IN_FIS_MONTH

NOT NULL

NUMBER

END_OF_CAL_MONTH

NOT NULL

DATE

END_OF_FIS_MONTH

NOT NULL

DATE

CALENDAR_MONTH_NAME

NOT NULL

VARCHAR2(9)

FISCAL_MONTH_NAME

NOT NULL

VARCHAR2(9)

CALENDAR_QUARTER_DESC

NOT NULL

CHAR(7)

CALENBDAR_QUARTER_ID

NOT NULL

NUMBER

FISCAL_QUARTER_DESC

NOT NULL

CHAR(7)

FISCAL_QUARTER_ID

NOT NULL

NUMBER

DAYS_IN_CAL_QUARTER

NOT NULL

NUMBER

DAYS_IN_FIS_QUARTER

NOT NULL

NUMBER

END_OF_CAL_QUARTER

NOT NULL

DATE

END_OF_FIS_QUARTER

NOT NULL

DATE

CALENDAR_QUARTER_NUMBER

NOT NULL

NUMBER(1)

FISCAL_QUARTER_NUMBER

NOT NULL

NUMBER(1)

CALENDAR_YEAR

NOT NULL

NUMBER(4)

CALENDAR_YEAR_ID

NOT NULL

NUMBER

FISCAL_YEAR

NOT NULL

NUMBER(4)

FISCAL_YEAR_ID

NOT NULL

NUMBER

DAYS_IN_CAL_YEAR

NOT NULL

NUMBER

DAYS_IN_FIS_YEAR

NOT NULL

NUMBER

END_OF_CAL_YEAR

NOT NULL

DATE

END_OF_FIS_YEAR

NOT NULL

DATE


PK&_hJPK(@AOEBPS/cover.htmO Cover

Oracle Corporation

PK[pTOPK(@AOEBPS/overview.htmv Overview

1 Overview

Oracle used the schema SCOTT with its two prominent tables EMP and DEPT for many years. With advances in Oracle Database technology, these tables have become inadequate to show even the most basic features of Oracle Database and other Oracle products. As a result, many other schemas have been created over the years to suit the needs of product documentation, courseware, software development, and application demos.

This chapter contains the following topics:

About Sample Schemas

The Oracle Database Sample Schemas provide a common platform for examples in each release of the Oracle Database. All Oracle Database documentation and training materials are being converted to Sample Schemas environment as those materials are updated.

The Oracle Database Sample Schemas are a set of interlinked schemas. This set of schemas provides a layered approach to complexity:

Oracle Database Sample Schemas Design Principles

Sample Schemas have been created and enhanced with the following design principles in mind:

Customer Benefits of Sample Schemas

Benefits of Sample Schemas are as follows:

PKN{vPK(@AOEBPS/title.htmc Oracle Database Sample Schemas, 11g Release 2 (11.2)

Oracle® Database

Sample Schemas

11g Release 2 (11.2)

E10831-02

August 2010


Oracle Database Sample Schemas, 11g Release 2 (11.2)

E10831-02

Copyright © 2005, 2010, Oracle and/or its affiliates. All rights reserved.

Primary Author: Roza Leyderman

Contributing Authors: David Austin , Christian Bauwens, Vimmika Dinesh, Mark Drake, Nancy Greenberg, Deepti Kamal, Diana Lorentz, Nagavalli Pataballa

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

This software is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications which may create a risk of personal injury. If you use this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of this software. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software in dangerous applications.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

This software and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

PK[hcPK(@A OEBPS/loe.htm List of Examples

List of Examples

PKoPK(@AOEBPS/preface.htm} Preface

Preface

This guide is a primary source of information on the sample schemas. This preface contains the following topics:

Audience

This document is intended for all users of the seed database, which is installed when you install the Oracle Database.

Documentation Accessibility

Our goal is to make Oracle products, services, and supporting documentation accessible to all users, including users that are disabled. To that end, our documentation includes features that make information available to users of assistive technology. This documentation is available in HTML format, and contains markup to facilitate access by the disabled community. Accessibility standards will continue to evolve over time, and Oracle is actively engaged with other market-leading technology vendors to address technical obstacles so that our documentation can be accessible to all of our customers. For more information, visit the Oracle Accessibility Program Web site at http://www.oracle.com/accessibility/.

Accessibility of Code Examples in Documentation

Screen readers may not always correctly read the code examples in this document. The conventions for writing code require that closing braces should appear on an otherwise empty line; however, some screen readers may not always read a line of text that consists solely of a bracket or brace.

Accessibility of Links to External Web Sites in Documentation

This documentation may contain links to Web sites of other companies or organizations that Oracle does not own or control. Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites.

Deaf/Hard of Hearing Access to Oracle Support Services

To reach Oracle Support Services, use a telecommunications relay service (TRS) to call Oracle Support at 1.800.223.1711. An Oracle Support Services engineer will handle technical issues and provide customer support according to the Oracle service request process. Information about TRS is available at http://www.fcc.gov/cgb/consumerfacts/trs.html, and a list of phone numbers is available at http://www.fcc.gov/cgb/dro/trsphonebk.html.

Related Documents

Printed documentation is available for sale in the Oracle Store at

http://oraclestore.oracle.com/

To download free release notes, installation documentation, white papers, or other collateral, please visit the Oracle Technology Network (OTN). You must register online before using OTN registration is free and can be done at

http://www.oracle.com/technology/membership/index.html

If you already have a username and password for OTN, then you can go directly to the documentation section of the OTN Web site at

http://www.oracle.com/technology/documentation/index.html

Conventions

The following text conventions are used in this document:

ConventionMeaning
boldfaceBoldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.
italicItalic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.
monospaceMonospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.

PKf6ǂ}PK(@AOEBPS/index.htmB Index

Index

D  E  H  I  O  P  R  S 

D

Database Configuration Assistant
using to install Sample Schemas, 2.1
dependencies among schemas, 2.2.1
DEPT table, 1

E

EMP table, 1

H

HR schema
general description, 3.2, 3.2
installing, 2.2.3

I

installation
manual, of Sample Schemas, 2.2
of IX schema, 2.2.6
of OC subschema, 2.2.4
of OE schema, 2.2.4
of PM schema, 2.2.5
of SH schema, 2.2.7
order of, 2.2.1
using Database Configuration Assistant, 2.1
installation of Sample Schemas, 2
IX schema
general description, 3.5, 3.5
installing, 2.2.6
scripts, 5.6

O

OC subschema
general description, 3.3
installing, 2.2.4
OE schema
general description, 3.3, 3.3
installing, 2.2.4
scripts, 5.4

P

PM schema
general description, 3.4, 3.4
installing, 2.2.5
scripts, 5.5

R

resetting the Sample Schemas, 2.3

S

Sample Schema
scripts
OE, 5.4
PM, 5.5
scripts, general information, 5.1
Sample Schemas
design principles, 1.2
general information, 1.1
installing, 2
scripts
master, 5.2
SCOTT schema, 1
SH schema
general description, 3.6
installing, 2.2.7
scripts, 5.7
PK/ZGBPK(@AOEBPS/img/comsc009.gifR,GIF89aP???ߟ///___oooOOO >@@@G@n```񄀟70bJ( Vf`upVP{000谰,,,ppp111!,P@pH,Ȥrl:ШtJZجvzxL.zn|%mJD-tn$xz+CyyU+%$B)'|:yB2D&.Bn)E$'X zF IȒE ٜyB1ɢ.B0-*ܑ 'H+1{D5$=Hŋ3jȱǏ CIɓ(S\ɲ˗0cʜI͛8sɳI, JѣH*]ʴӧPJJ)rhʵׯ`ÊKٳhӪ]{v^fָr+}7綠vxPaz3AaZ<'͜xv :-Kn.o;K땯85Ar!.`;!ֱ/ @󮶉 >޽v Vx+^[kmk {zLRp- -q @y!Q;om;ЦHlD nV<ۓx qa%;|ܦ@tвfmMq8~D&m}CDꯤ]cv(K-D~!Pt>\|u;·%o:zlJvW4!+a\n{vpZ# tvsDOkݚ7=wi^@:(BW줃 ]LVCez)rBe%*BϷf') n%\DBA? KSH@ Qg( )6 Bs DAe`@+8S62t"%`-ksTFW q5qg hHl#IƆH2Hr$.)Lj '?Pd)?Tjai+ˎrV%GnK*r#~`  ̈1dbdl!IE܂3/l~Κ7i9I98'҉Nu8s9*:'O~S/C9O"uA *.H CtRh4Z Xb AF!U$0:с, (@=HMP@ X촧%EKCj Ԣu h@*t!|`JHeud5RYѹ'91 Q:r]Ǯf\iKVKa]E@R4-ʴ'Ǧ۴KY7}*xSRF@O,+X,|ŘݞtMKB pJe&X2 YU>PtP8uDR{-@nkPGABv!(z`vtI(/[E: X 72[Ͳd-!0E r;,0r3</1rCLM5Ѽ-t6k<X4gA̬DsREx6хƄQ~Fk l؇d~ :@v( * Q:px B xHPn@yаC p `qBp|p0 :@l~x~'p'@ ǘp):p.@ϠEp Јrh xx6`A} pxXdC`( hk43a@jt99#t#a$M&y)1Y^.ɑ24;=59!4$cI;;kɖ8!f!sI5JٕzV|)zɔJ\Ci O9Yy9,@jЙ9Y4iyi#ٚ9)_j`ٛ9Yٛ %ٜ9YyЙ]^gޙ) z e zjjZZR'%(;A&d͙R1Q'7S.ZZP%c *"\!7}(Z/JJ; 3'\q6*Sg@:L^IB10m2^;śvЦjSShc:ZXc/p!7näAZPTd)+aTB38 bj&]4A\d4*M3]:9-JT4ɡA7Ũ->:18SbcC&B1ʪWJ+ʣ&ہ4œ1-&4^q:-2j[jzu$jBb8"M:0"TC`JjP12*W2>B&JV6qӨb2[*5Y8bG._] I3"$K!4fe<&/1'(F\;:CT*" XpQ5 ="*>/@v`HE--yDR'D$;Zќ1|++:բ+^%^jRh\9Z1Q<̏ is1ĖpI ˼<<̜8&5Ja4I3HRFϖ`Q6}`=\(%ZJ] '}<.)}1iQr ->A5md.^L$UL9?3pG1,b!#!.AYu"b8EG]$ܒ#-%FW?4GSb+]$KVSsAS#Z0%$3sMu&{%)#,<ڛX]e[$ # S' JM+,. B WCCS = ,n }#==r:tEveZ&x6WX*#(YT* ˌU<OPnRe`j.e1 ,iT>qLSՔ阅F ,SP쪅]`U$S2 (E\Z<z@TG)/=Z-v<(1Zq.<2rSs>2T_9`pT";>!>4;V/i\k/R~\D1a)%yQt/-GkҾL!SH*R )0m'I]栲^a3?˄3b/ŕPSq7UXK֮M{uZfg2>oݷrcܔ+P- PM="}A<4/ [?OR3!@qDDc?}=XiV%/q>'*nP] )a3".SEJ*q"Vu`-dTc^b/F]/d_N` \ ^It> Y6{0~UBNh߹  )+- /9;#&=GI27KUW$TYdIOS k{g\CaKр;or|Ӫ˔@D堳ʙﺝ ru'@Q9(2Ah r4бBE:$X #Dq1O_%f(A^"8`AH x&ƞ ٤sˇSABohIƈH` ʖ8- #+Y&6%(Em3@ǁ*:AGL|$(  KfF$f`7H) ^Nq tFA `8툉 (,1gbb]x߲J*󂀹n鼤sw"]bs" yGLh"p #;{O%MY`wځC ) #+( t<& `4 *ɢ ;Q . /5Xhl$Ӵ&3*s-%i@6 Z t.$ xJ,AJ뀞RS$qL)  DoUSDbxJG"=OL3;E3&V5K[,P#*6H$RIIîTD H"hCoT,(選oXĘ7M9FK 2}iȊ܃-te@$ . $^h=˜=m 1ޅ#\H*9QC; u="^^} BʼnS6 E&ką@[Z-5a8kb/ , `).&" JDi. \sfEN0Npb[\ &c}!ZN$R)E 8}Oa7dR|4OvCuYd\ޭa^xw~>so!}'D2>6EzovDg3 o}xd`@jP`B& H: NiFٸ*h !\xcY a{q)' :@J9Mb\aQ3#SzsBM+np ?u(+R&@ijJT2D `*u#ѧ9! LON hIajJ?sӖP6H:-a] }iO) :f6Ȥ 0ABQEд Ӫ%C)$,&`A(B(fdMb򰎔tvX]ERBL9LrG5!4L2=Ҭ$3M\{ḯfYu@;ibXdfhH#U r+I4K,e*BɊ!*Ze(>T6 @fN>؅}0߬}LV]\ع @m)O^ c2mÆ{k"naz }]j- t`cowR:dGP?fkd%9K^2{dl+3򖽗e5IA{]U1͛ v3xeJ@>^ zYr)lvd愘G*s|UB2>t/N11)% 8ώ'W YZu"7m֔t'JXV ؈HÐJː4L-Y^MtK ze =;" Ǭ vxl{7]m1KHaY1g ( ndcqixjC2LARXe +L3bL dp4(=ӳI oT#i9 G˰ɋ9+ܢ@,wQ*W8QED(#!^$R*\nѐ^# C2@TЀ9IcS͘*+d踫5^CA=Gn\" 4EJB< Q 1^NfQ/  a0AKEJL 9IPDL  `jNN#.DцOT[E&!A& pGX13Jl.-EXD.RR\ *8~8$) ]] e/c* T9 D+zr$gtj3т:@rg7u"%8@ 39s0":2330;k:;9@ =b=L<2 !a>9->??=hxJʂ*Y̖ Цz-+= ,,1hAm Hm ti S h)(r ̴p+ 6<Ϗ #RD/inT+RFs 77x4`<$J (`TF-Ҩ msvr)0T n@hf2(. j= .2 C0"n;)B 1TThIHM{b@ GsR R)WR@=m`*PfLt,b0? IO'G.T{5NNd'J6P#8gSa8 V~) *z #ǡXIaQ$ErڠF5Xa* "URU "`Nڴe;OUȑE[10T(4N=+qK*!?zHէ(XI\^n "k0堳dM)` %D$s1h#Ok^I& $'l#X&D&CCQPH$#`۸9\k(f ffTLxTЂ5 Ϋ/ "6M  p"^:ǿrLLY jqAjD: 'Ԧm5 n>cVvA=pJwbLW N G<ōu@i_;5wnCyWvwwQ-Wxv$l~\Ѓ|h N8LGVSyJ h2ByALs($8*n_#pAz+&52' nl8' Ʀ1z@xD#V5)nL&Gw/cHR#m[ب-S|%x\+cߊh2x>1`ce$'ď-xIS#)V_PC ENeUA7 %P!?'"yX xc@8n9ťE> eeΊ6%DDrrOi!Z>v>f@bYw`-eՉ FX$ Hb0RYO8|F~a[J ĀdԒ"`v..T>Q I wᝨ#ZT㬂[q .\c1e3 KEna"н\w<+5w̶~2Ɣ92Qs1/E|7F:\o<2י+͒8y.RcnB-H菄b9j{3"AHh*be d63"hC92Q*%zBl$b,*"x:g2TlAqdeZq:gK!u7:ZQ=쮫uWyx :y&[wx;eu7?|{3E &CWN{D{5;IJ< q=d"&2xF",Bd;ͱY[;K/PTߢL#GA/%<#Rc&/l"6U G,r)wY [#3- ('YВ-R3C_q|9=AdeA/[]^VC[% (/j9ǂ=ɜ50!lMoPՈɼaTI}[XeV [5@{]J[ u; }K\'VD%+4eXY9Ta G⁊$ iTu86eRI B\@fvIQ} N,' 7$n?ý,`1!wuw^{8> ^ѱ>!a뽞~Lo[;辸-(Y{>~?a3 ]ߌd,1?59=AJ}Q?UYGa?eim},;PKb|W,R,PK(@AOEBPS/img/comsc008.gifGIF89aNϟ///@@@ooo___OOO໽Р```44e000PPPppp ggZZMMxttAAo788]^`./0zz|nop???!,N@pH,Ȥrl:ШtJZجvzxL.hb`n|NtKڌ B}){Bxt`; aDB+c`Vˬ>B&KP, pbA!*N-}Y4i+TEp#^:FYQ="`JExᣀ̛<$  @c>O+=IuQZ@TjNd8 i.\u@W*EmqH)%nEñ=V 1g9?_p81}::/JT6͖a.,.R!^\7hC|MC`L& @QP!3qUp60_=XD> kKݗZ8K rvDh 1 g7!]15pM؋ PB@h< K"@UAom8DbC(c@  Ȗ. P'.@r7Vg`}v>k49!#~xEHt׃dfZxafɼciJ-R>F^LI @ 7P#I *0X!Idz=`YR ڃZv%K=l9hUgBV+fvxpߒ@dY@6݈kBһf"%"T< #t;40S˻,kP0lM|i @~6mz+o Zqi64ϕbI,hS"ڲUNJi{$h*PR: b M&f_؏{nZ_ƭ nCVuO&YMmaG +R%T_@b8_<0 \.QB^TN`EҾn9Oݪ=zspےiM/~j|+i$h)bM7&pFB` r, KkA0 < PB, qDBq up)R+ _D$0G3XnA Cjq 4E^D@(x/@VD+j1,y+YJxR|q(~J ~YA %#HҐ e'ţrJђ8$ bivV Te2ీ{ .)-hi%T% I)Yeb0+DXXY0e5`흿b\(.a&K1"DF`);[P:T2Ab H03-1L7E5EH@GPlu ]v0FFHI љd. /{ET 0%dKi9)!l*39t1l(BI%r62Ŏxw:|\̸pÝE 3JssS03涄4m@S W*L 5I3DExHǺ7R ޴R%TZ' $H6` AJ:i%/,H sLC bƔXFVP = KOdF`C ùU 4(>FO<lpRhՐi%3IIbٲFшuۺqLH.@X0 tP9LC,`sl˘no/l`5GwY( u'`6yŜF10~ri<VSq|܏`t}[Z:U"ipMryYWF*0|"ndpWdFƀZB6[n2-i2Xzm\=Txi 7RR!4 B(~*%4;8Zﭦꧧp"^\ P@YB@#e愇K21 ߋ1&5jRq C(Mp#D~f|$zm/ h}Μ$Ww'?sfdrFdL cBA$BU'X)[_7Pmۓ"Qx4qbMB75${6xMp~Vney1&YWH7<T)4X`4qV PSF2BqHp@:X(W-5Xr5\F`NENZ+Boa%!2 aXK/LiI`[ZJP9)4PHdhH*x@ZR\M G$WH>;%s5b]cJ#U5%^%<Ӄ2a<WhnI``|5,uQo!S(>}E`xԨ&A]u8~ a+kRW g9L<~T0}ePia`HjuFsƏQ 9E2D" h{h#u?7SUpLt55k{ni0}. LVЇ{Sh`D#;tftHmpV/IDFIX-mIFuT/KSI&P <<>ndp`tj/pfy;I Z/&tn$scfLR5lq%qCДLdl-%YKLB0hztDYudv{r$LMuh[D@NZCow3tbH4EQVsOkNEt s0[wz{âQKgR5Nz DUESt-H4FGxXA9=TB՚PIL"QWg}`و~(D&VR8!IWN5%Vϑ4uEIAc= hBĹ3ޱЄDN(XyB45@,4[[J(3YLڗ[\y:AI2ډȆ^,x(p[䠢e\ Dsy32__U_֋j^F_jn)Sc:8#`y8<V*D8ͥzZR5`dy4h,)\Hj'b H!X+z@"pV+T : ?Jͪ~Sz蚮꺮ڮ3{ 7( 唪Ajd%ZjDJ0BKEY@ :aZ SI\'D@C]TD GV \Ney ;S[>m++FP)pWol4)optu J";`$ѡ /+L]܄JJ`JO'Ki SG0)t\PZ $;SfWwO{SLUf[OeydM4ATse􃋵j`7zW,˯cpO0Q[[?y)W\HR SPeR+0~21sskuD3 + lF"B `4-Ȳ3GܦyCU]UNTc%\$۪ sx= p[K [X;FڰF,7:{l*T"צ4uBx9Ґ1kBYe1\A,A% iв␿DRC.+qK'B*P0BTղ Nt6]*`5-&P 5Pk[A\[@3G@m) 9<|>9[ċ66D 4{`1q}'mGH09r7_L-)L!ѴؾM N;!2/'WA<:"'y8"%pD6x"|",$GsPBN'?S#p9ɽ/|@tZFf@k \8(1% Bü<RY—Μ^ . =KHn%̆Ie9g9X ɜ^5 -#M-9SPT,GH0!oq_Bb=d]fMglc eɬ;XaeJ_ۘ:Q*qK' ppNԣi'L4@,+5h|bqۛIzOtW|95uWN']^)Y'מ,ʡ6QLڅź2Rkܰð4zD/O^QjLՒܷ9ā@}@ݕ_NPz\R “6Y!- ȭT2 1Y  CTNȨ@Z%`gUH_Bc%.CB+v>'>}xf-+O;KnR[:~]ݙM B TNAtdT5qت'R 3D@}Ccdc-}5I!@㰺dHTlӇTof19}lH OA_N;)`uk"NhΚ^)1U siN^wvuy*$tFEEwL^`>I31E{nj CaTxlHs_0Yж-c@['RqH<24xjqmn/2 HOP WuYN{xCQ# e8θЈv蝕Pw5:~ k?Djy^dpDX/DKSU]73nF?MP"]18>f R= u(BĆJq>\ZDUMx|v{{q-O_s^<<,^CV]r=UX)(ߐX4IvNqAh^:.yߩW6ivq! y}Q4x$}v*v|v&+/R:W]_w`[aW xl fw rzzvy|{jx wy6hߕdmz  ᠁J> 048y5pK!c\7v$Qҷ_$ PA4`!!j 2FuzL*!ѺkWkڣABFb:এ4`г%B}lYm{0hQW4; M3 $R!ABaHH\? R sEP6|WS=`\G;ڛ>=0 'щԄ ,B6Łh(hq <3"2Fq"ıF) (,"P";S'Rv}"RX^F9eZEcIR,GM$/+Q{ީ%Ďl'1pO4;^YU 8c>Ლd`a̝P*=ݦF ffʀƚ(y"S1l*C!dA؋3>K4grΑ4̴w t1 U VG!vE4Jh5w9@)%"XP꒱!d' 9Ha A,[Bv#LB@b"l1 `.Jbf͓[" fd. z¦M折D Z3QN[VȨz(MNX pi+Ha0!,E406u[TF4b+C" ؿH^ 5LvKК($ )QɓP)vWo.$DBoCJ$GR]TF_1|rWKO̤+) Q1At2!D~,-FSPktLYew]QFF{I"gS& ?@TJCV`BRЇ[B Q+cF؂LqYZ{K?G:B i D9.>H$*n"l@-yP/ч61@ZHMJ\cObg(!( s =RJmxQP 8;BP+h87/P-;Le1YnvgAZb,qf.Ǻq ;1FEfp }l= :րѵ8Y%H-5$lA.vRl&@NXpُ~Z_`ԛ}>MV=jGj `@QR$$Uv! @GgжN8hOA%IOxgʘ$T.im@T y'h6l p5jhH LrJxH-tgvYKCe1xC O^)˻k‰܏0/aBY<*pH1b0\3!Mى2y܆N6bYd-|!УRz0CO6\o"c (;ؠܢU|щ$4!$l`mSa1aځ:j$zh┱q{\2&1kہ$ t+#7E!gK>y~>+M xTP{PUK*D5r ^goQ4ƴv#=ެdg9SF/":Z^ \}st'989:)% y^G.qnw*cNQH|O)arIPN'~i^trEVMf%9pYd; de' ] (αHei]3e^Q>/QR$ JJ*yK<<8a39)eBy(3 dV&[kR׃imZz颁! ( Gj JzBR$b 2b`ώpN  KR+uhFDG!Ht:m<൦-tax & oAMr."t2ܔ,*nzF4ί&[D`',I*P`*&Z 21t<'"-f~-J.IJ!_NH& .& H,fR HS Sz5]ې4GN ٢0^s blt_i! ?tp.G]!Fhԥc*R戋~ .A &~bǑQ8Q"#3U S&f =鎬/&J8!D t=SARDeGxĂb@]k:8a8 9]9+,:W4a*$y8vD5)pU J(|d<>P~fV`jy<|$ .:& TT/:մƕ\eUɃji]=gKFkp8g4 LeQz;90ȉ/'A/c lgEVT_6*%@e8eU&iiRnSARށG7v 7xC=k 8q8wlY-+OUS omm'd,*k(iUowaPpq pl ok2).ekEt$X/^0w<(wڢcg.X`zq6p*`b^vVt"ep!'Qdbd !T#S44Ƃqru_uB! `wWA1D $$7a0d#b##nW`$GW!8jUXdS{5.@>%hPP4}IWtwS &u[0BL8f""p/X8Y%Zֲ!A5Hȃ `InbT2D!UrJc h;(tmq&$jxnpXu(r ta}¨p dyt!$@6,28M!s8 R¸oQXD_w@_,r84`FI(a cd,Tv"BxY qEđxgwaVfYV}/y&9a) `|nU;ktn=e7 lC&r>tv2^ٜ o 44v'ڙpܔ{ƞ/q>Y9ajĘGJA'5ٷm! jUK5v/~yGnu7Z:zm;;dw`:Ζ鄶4n<ueDZ:?T4˛h ^>@tMW4 e1ǧv'a Ba3"d̄5A8T<Ût! 03a B7b] xpcVw#up`乻:7لCZ7OpԉX{"؂1[`41f@.o"PL$~Zt/*,b5"!zX9Z88oBr9(afz ŕ8c' Lxri+#1j_Mc6L.7du# L=scƌ#Wc[8z3Ț9bINTU#5 Q1GQwEK: ekCE~ N2vS#[c%TUB$"WaxEes[lfsEgymP*uvfp!FrcJ,<'<_|?Sw!H0%b|teFU )ma{x)}$y[ѱgMhғx$„?_F:(Z/{3x /[XUQB5/۸$q]s}4VB\Ħdgzښ(3۱Hw=^K45ڭ4|Y F;l~!>%>l`N45~נb@¨,USS R/;Daimqjj~s>~ AШM6 pN6|bIm ] X$>Ml|TjQ15`J"%mUcǞ[>\C #^TI0/2bw'^D3  II>"Jlbʕ.\fKEq>Q&!z74@{UAQAZӽ ?p א-LY*BνY^8~{;L:GkC heXTzh<"%$&)UG@9|ouva{Q+*n!8`I%26fUd9RVEY:^e.qa (y  rV: Nž" (2!*, U 33a6Sm6{rIJ.H"0B+2t)X++- 0T, 2ƌ5lfU ,bn Za ']>p̚v("HS@+"ܨDBt@"(/wa"`qTbO[%8rV} 3G3i4T"R* $/E"&)H1Bfصxl#۶ڶ! eMH8ǀ.Q%€p da*D٦L WA>IɫxlU^![{'G739 _'v7> x<1"<$7n}NaPdQQ~EĆ,DD#&W{22!+!|SF׋Gxcc8Y#91fA BxH-6ňG5&YK2%Y_@e!.qhHEwHed_DGyә % &8r!@`R< "(> :SfG٣=b"@S0 Q8F6@)a"/QGrrۭ߂fp碛*#)Pk,z&k@1θ%9<B52(; ` @csܱZ꟔DbʁC!/@ ߘ4ʂfZZg#4#*9&\ Č`]2ØYdmjжϯlZQ] 4K3';XbDU*Ȣ7v\c782 @!łx0&1thw@PX>< P,$*X< d4ܞ z"E05Q1]Y"L +q3߄yJ W5qx9E`H)Jσ<\eAA<#`҇"C!0*١dу_"Ʈ KGB$TCvfX@ч.J!}<"'R(78=aJJX' Z8=F@ q1A50>=yHO5SBu ؅G);Fj(-#Lآ 9Q qd!!QO6` "`D`f u\AFa.fXzS=h9쭘zMYN9:_(sG3uf "洞.h&c3icTD%7H:@,\$6c5SV ;86fS&v^.<~+]3aHsEVɃoH`IEaju5)0\>1 'PvPXRr8K@d!(¡byk3ەHv]fۗwN*Ƞern(ڄMo*F(Qpf;6a_`Z=HhC+E1(kv>;ƾ#u$v#Jgj&zp@ŇoIݢO6>!e &N S8<>"ȭDxhY)3s~hFZf֑BdcDݠ. +,D(;q VFpQ; N[xP"/a''I5@w*b/qTbĖc-w #b l0T$:9U7Pݦc;#QzRv`-qF'p\| ޽-4N=V^Q]#,Zd_0erY# e5uz5 `WB!BmUDb!&BJOd`_E IcUN  4_ ^uT_5bhsum (CuCі(`DZͭi  K}{`X`:!!18 (: xTNLb9*_arAV( <sAEs@)L(0"B,Ѩ1B #C=!Xe!D.@cUs!_&@GJQP1.b0ںbbB9H>N=%X?BZI/ d#Ϡ=ՄFd@BICv$B-Ȥ0d ed<O!4,6d%- c4 ՙH%)BU:CVRB* r, LsBUr6jʹ/LKU$$?\_UZu]<hN@fCu51͘XP S[>tӥS7IyYBck`11SщFU[.A41H=G y d(.,('HDkMbVXKIT̈ JD^G^]M !$bgnE%jb'l6yi MIp"E FH*&U\bHyDI"xR 9$1̡ ^ ŌD;@D^1, $"MWVAl_\N"*JT d'U__@qhLIx}.TKxTM! b )0W%MؠVrUנ0Xʡ̧i= pݙ"P)ʊm IdG䤎.T! *ThAAkN*_OEfY:d C%smt*8+&Hr2&_LQڧK$9UaljH:i Hp%#!{ϼfߕ <EY«ilbPc"=Y7BU*+ښZlEαH,XU&eXc<?ʃ7ZxZR*1s <6&N<VZSq#7[<(Qœ}2Vtp*h@-!v*A?Il8-X~B2d6񐩮fV6Z F+ᒐ.iF.P1mB K+/ o2/*'^kJD%l@n oo/+Boگ@o/"boM+3pJ|MK0hOCXsp~oXp p 7'p ðdp gpSװG0[#0 3q cK1' WQq_ l1FK1q'kpK1F1_q/ y [#r "3/@r$D$Sr%C$&g%W&'2'[&c(@)r%s|&IJ+ò,߲-2..A-G,2//G0C0A,$s.34?s/G35Os1W36_2377g3p&s%s$s3$89ϳ:׳;߳<@ 3=sD@@ 2@t@tBGB'C4D0D+4B?4F4$4GGotG4ItH4Jt@4K4Ltt@4x IJL4NǴP4Qt4R5S*'PrTOAK&S5V[uU UrVVc5 @@{5)5EgZGFOtT[_4[55]5\^5^+5O4`O6a6P6bQ'6c/S'RO`SvSWa_SgboQw6ZuXw5WiGYChvikkiuY6j6))C*r(v+onw2p6qo w82CA;7twssOwtKs_t3uou2 6s7s{6c5yk7yWw{o;C@<|7}3;w??7~~3 3;2 x)p#;8!GqgȄc+g8{q/xI˸Cx8^xd@Xy+9+y8y3?yy<9p<ot+999'x @ @@ywl@YA#7/O:KzS:[z_zsCdohHO~T+~gB'd~o7曾|>&='MU~#@,3>~GFCA1Hp??E{yL0 ܂J# _o njX>`7  ,e }VLQv{m5x~vx~ $#,DLTLܡ[\;lPT , 0eD$!U@b5tS{&6&NVkTFPɜF@jY09u(-QHuary ZIW"_3P!g.Yv#R`S'l B-ZiFh݃><kEH FPΈ63i^v鴬h:xzkcD݄_$h?' SªL?.Ris˧p#B:21`+8,+ZS@+y+1N4iŸi. Q$ṫ#)#{v'mF  rh' @(d,Bb/pnR(B۶8`˿,mn6GFIb$"dZ Y3KL8K>6tAQIFM⤏Bڡ_$5ګdF Qf* *Z3qjiPxS(AP84.d4JUv2<86R-]\(bER!|cH&=v<)3HmKs(s S[gIO=IeNBb+n'XL(fW`sJ,` rJvp SYȪԠ/H 9ҡ`xؒ(0`& %&1>[ `%*"{QNy0G -"щ a&-k#(761[ 0AC9H#x8#`510c"9eqJ}uhbvoCif` =8`heE ؇IAh&'I(Sl"0@RN,6!0"< /}8&R.dA=gBɆ}* hJ5M0v;R'q% 5 #DzFin A(4~63 z2[H0#:qIT8F XE"x'ɽ*B@q GIk̤jRVARC"]XxT0ۇƄr0#00Ii4XKMCRT)"R0FijE! C&-V.+ksl fz5BŰ `)k>F\m{h4KQ!A1]Sd$U >vJB*x8Ds*Ga\M B C# ;N³ . oUш Fu0v%lCˑuz*vf9 ށC03"RI52<шP V>nUÜ*`]XNf|r9!3c;ؒN+-"H^(6V=mz%lhra-%uS4R\3G$%sڒg݃h,`e'Qj6?.{lywvR # j MZVƥBj34A0LCx0=ݻ; -k<%Kn!k c(,+{cáQ6Q6i+xN0ӱ^:ǚRvD+ ƃ7IOeL%*:s9ǽI>'p)7_8w&W8 $UVЇs/w@yvˑQ*[uI+;=?y{i $cWÚ n-Ywnb@ ^#7χH)@q-R^r"8Yނ5@^!dǺCr5>00Èvyi:o=maZt>! -1GXae{YO4VeRJNc b}b( &0"йJ Zb !"-r>S4 r[jB`* Dв&X[+A2ВSʏs ?@`<?Ȅ P%p!S>@/X>>=5= B#@;Âs`={C%C'cr(#8Z(ZC;KEؚ @|e1ADDhٹDqҥkM0#$; Q+2T&s ȀTܪ_&+*1(k4)6+q _ :D3DH*² zF!3 n|#33*G6BlI4qG46+Fz|2Ge1`bHOlS5%$RSCO H|xX/VY\X;8j TCJ]G I/2k?~*EG-e@i;$3`'XGj6j3C^ Ia#CEd>hD!-> | +[ S>D}F"̖\RK?8Ҵ8"KkMP HLn&қ%7#~8%+OKXA=8jƌM:FQy="$Op|O OtOO[!C*a#k?jN1JVXZ3B/D{ ʿ8LPCQDx@86(h:QJQI, ,lrQ\ؑb h=ʋᲕ$L Ek%˼O 5e5}Q"\s)3Ʌˏ{$hh>UO)[)>* >Nz*S>0M"S-ME $X7黢#@$+!F8e+N <}I JF#/rRG¹ԁoܼ.I/T\³%(u2R@Z̫J^VBrR&/39ՒXzJZbL/\r]Mw!HYT5lӅV@)IB-.MJ"0,Q-`39—T2lOIQUODVoz :7ԐR38* 5EhPmW$qU .!LM%[Ak bx1Fy)OEY3:*SQ|ڭG_\LDxkJ98| M+ >URUk 9l;[ 3״7 A5SN`%C55t?8KaDP8ޡ`i*'kJ&1Ò4 ;/y/0'tɈNM[0FV5%nΚQ?<7 c҆#[ m[Â` ﰗHCaE 3?SҒdɝWeMC]Vdʳ2,[ RPgP af65Kmi.OFp Lh2Ӭay[jƃG&=MDKVjUd ֋H]>ڶP5Rq%rMc}= ֒H ,'QRdWd!~EM9j\ScLZ0kKhDԤkʐF>cYH +^ܝ&ٝڍ]~FK֖DCSxu$ oZ0N@_&+, T֕}ܝQ3o{`eY#-E q4O5jDZBbٷTto]([XfU6Kjkb`⸌K.>oGxDEB,L>xD3/In87C #Nt62+ s 'ڂ\k:\0QAWeY3_iJ@b=ʡT !Ph/$+yb<#8S3ӓ։k=G40_6_Bg*)2%N!%sm%ȐTr6WWR>\Sj^֔ENdΝΜpOa!W`m%-2# xxnS/7sr2Xs875y!ں쇰˦)TX"o#1JĦI#]$Qp=|X|8jr3#Gn]ި!LA}R$mL=$uWSj)~I9uki5p]n3=:AE} |Bq#8 >wjaȭ ÀXz@ F|n9E$hTD'ǘ`Ppd@3гC``$ (Ep3'0TӰyjI k4`U0[Lffl``9hX$,帼&dԠ`smOKzɏxH<ChWv)fy.2i\죓 `@y^*H"-dE9NdB`h(4 T&GIt bcdG+}ZÈE הtuP djv2~>2w ^ʎ=k j)*uC< ?R{PHРeѱ-pẋgl e'" fd N5iv$} prHO'#}##X`:EQp]) 8z00wNC=f27Hq2"-tݑ ,ÁOQG4 \h=0T?GwX%nE`x[kDxRc/9@e5H5a V%F @xA 0^4> 7v%$i~ ji:©C kcV`Zd ~ e5 qVtvT 1 JZ@U)qA@@PLWLe9Dy4 HzFlސXRɋWu K; @xM=!W+ rx0? L";:㜜1vFh%V2t ôPpLNi2& 0Cu_S7=Flhwl'N\8  rg7 AZ,-/T,!Ÿ˔}ى6{yT1hâ4:.bL5:3Y'FwdPAϛy1 "z|JKM<[.ыVF_\bN|bg Bç/33KZG q&[=b+] !$lM'fpFP @*0_@0v9 AҌ)a h0@KS @%R&zXRxBT 0as?yj|&FCH*҈pi D;|@aX؍ 1Q0,I@C0@+:~{\;N$QD:5)d\E2Bq$1̤͆JP\.ⴉi.xK3'd6dxflR \ԔvbRZ#kTAHh ,f$,`{~Ac5\k\!8= X Dkz|0$ʯ#R%~P<@>(`3M>_" $QOH84Fpś,: _^Ԥee S6l`gYU#ivVڐKQI)V݊f#;ms DQV <tiWA̿"h4O8gJpR@^{Zb >FꎳC`q$)ؼ]- F,Z3'@녺qKø/nE lYZ+NИ.d ЍQ܃L%pK$mD|SRP`_* {"- ByOg,u4Ԓ. T Ls\,@׿,6&V̥AƏ͑<4 e(1 ;hŜЈG5hw;a,αq+FLJS̒b$ ÙF$OX?e)rFxڞh4!dp5e@$Vկrjt.~6G %'0[]B+zOFBZF7ZUJ$#ɄR/DJPa2'N̒D@~ۏQhfl8KXZ@3>$B :њ<PjP&hK,$Al0;qcV^sCȀ(KmuޤW_o 5C8ʓQt(6 RP-c!obnV5ķ@nkIu#M- 9ma9hb_a7tV}=) -8O Rdy/X֭~A[x,L%<[:P2fP\~D5-݀] (70[i|}6~Ta(%{߹̡`}抻zcsM.,qZF4A&ԭ@uS\*3chL3kb݀@Gqz[ yKa\>ZolH-bR ^4f5UKp6<3]uVZ%*bJG + sUV>^[c%dpx5yŁ &Js%R&˴$5m("H]cMOQ(SHU ll[FJFZ_tm`Eu sHuhwy{ȇ}zOLg@&u\0,2=0 i+mK3T+zt6 '=ȳ {W.vЛ^l8 jrr 0t١}I#va2OTE!Ӊ $`[ڣG%9cqT2=B FZ:Zpw MzIRx󊩉PvK20f80@ZʕH+u`0Fs%~.CG^J@! |,G /, B_ZN N8<}q8 #xCdh/1A:sj%kH!8t!MVr-r&R'rI:rj: ΩӁ"9) z%E|z.BnR,JJ(0 E |Uў+Ak74G$>9YS||Hpk!fMȘp 7бڱ- #pq'KCJk]в_dBvdQ0Ҡ.I kQ MPDLPot6I{KM{58iy̑~@(a)Z[]LӱDF^:aR^@:⓶b1jB42Z0fOb#l8iG(`[R}ʕu anf;>$$ "oJ G#$o[ o{ja (" KG½T602y 6 -}|R!a41l O Y $T ]T+TR\$ bہM(ZnE`K(\GKKkyP PhN x#%`j ]2CD1)g` FbI:9!;T) śr#9TrZ/ 1̹+(lKW,ܱZ+]cs,e)P% =u_,;*,Kr ;pK0F@(z6N~G!(DSL$`9 +ڙ1 y@쫦`əpʽȏǥ P$R$d:q ]y --8 `pOp<z<ӼP - @ u 7 <%\I |"Z[]Ϲ 80 Kw0̝kn ð彺` mBő?2{x2O]j+:sC+} l ui@F lӝB$͠DcÃB|V몫"<= Z\;\9(8VԱ͉jZS}:~aЪscqM #蹑: nIP#^E[\ Xzъ GLwa{Mlo!?HT\ƕ_%@sac!mD:ܷ8K*ͬL 'PaB~ms++ث ޜTU=H>qYAe3ffD͎T|Ȓdȓ5)`._ ;М)h5xmʿjP^[vt42&47k6a6K $}/j U[:`!纤Kty[,R q0ΙۉnIcV&$D ,VƂC@+J-fb} "Db4Zr^8r:%љ@ש`Ga.ڑ sMA҆qY7*I!mVlg@sS>@BlnΙ} #;pQ,Wy&VCfҞ.gs .[vR䭳NKKZR۱e)<nЎL! AF?ygF~>R%I6sz.maiM lE0 oYVڕ*=b=`yw+qDgu3Dn:]/4Y v" #$a!R!?R ]c:`N[ Ӵ6A@0}/֪ꀯ7eyفa~g<vT5*Ոu[\S*zggʇFSQo S՟o K[@ <o7D C_zhn]PaVѻ] 0`gOp* iP*ɨOi'1ipJRnSpLNn )p5ḻ vOpW`jIA``agah`9Q9zT/|gLwKvj} xjBB+Xfa0䁯Pg ;IDq@5kQC0'聨ti9S>"zLA5<xR $8!҇- 4کB["kD6;XlE(d/l3&OK$Xr&K5% TO)>FTRU%IQS`H4AʰE8NLlubN=\3O TV`Fc&|P ̿TtLC 5.$x"X([jflhUiƋ3 [@'xhZzn'@>p}w]'=-،v݅UIC]0`x;U& .)-8zٓ])fk0'=egz88jG(j=VxlǏX!ʯKC.WAٺ H[z,׻`ęgJwcƦx÷=i}ru9q-ܲ(o~}pY(/<6(]a})m:Һ `\CVW1~{L 1O8HaBh;v8 ÄfP|U*Y \E.,|vg #̡ړܱbRkZbZyQp2@q G 5+DZS'?2$U,@TG]p /Ym8(0 +8,(*{y.05},IaE;bD$AiF`%Še `;M cWdŷJ|E_%G>_K] ,ij6LJܽFaB4f ئm$we[Uԁfi˞'Y .Pgcb9'.(l#!OIP*hJLB/i1% O!3;8x(`&{jFksyl,S]fK&0;n. 3^2moૌ Z9v l'Q!Q-$[ScT[/܅}3xfT)6*P|YgZ߆df M2|[@4[zO^} | y^EEHE('Se{coq^.q7j)X P0iЪr 0c/L :Ji.$pyOӲgi@*ܢ@IC4䡈ȣZămN ~Y;O ~@Kuv܊sf=v)@"6?$ D* *Z-hZ ʪ+Ίx\lj`a AVMcpc8G `xu% knpr AkҢN] pLXN IQ$PX f H,lУF(.+?LpV\HC"tQu |1|NaJ‹@+FQ0F@OHQ!8Zs^8^pHjdBxl1ꈱR„J>(cefFQ_ x2bȬ)Kqghe,fcA'1qF'p<^R fq ?2lr8PVGN fHrc0V&J1 *ltLP PQUQQQ+ -'9Br0sj'l'B&pEFA?&$9n+1 jdy|H"8+2V ^5cʜVJՎ$(926YёAu] 44&[  $<& Zx Ű: 2mu8]k[0XZv$uE2T- zB զ`մ]W>" &ѾIP1Zq[@v]]*MJHg@aӁaL!-F 26Y BcnsD]?ki|1GV2-3\A&:6(CD[F[ou^`ɖrt ..n aQ'.!`o%hH,,*!%`%c uk%?pk5oɈf+x#5&UAV̋.9̺f! ("l.v7#kruF"F vv%hGWvfnxls <0(56 {x  FsxBTDq3n3uwų%mhC)UY,@|v.&7 X؉XSrz`U(!DfL. Rjye bkhGvAE 5ݰA1v64Of`VѐHiI8<"YÎ][g<|e0 h(qBej+^•! ]AȖosYw{ٗw丒A1Ey-z`̼aS@$d+8upEFsY7љy 2y  (gyy/Y v1:Ǿ՞M5㇟u֟dAL)ayIA_{098:5UrBmp^:π:M(o\ !pIa#97x8+A"{lAЃl 7~x r6T5L: :2G$2C0f4Mx;wk/ #G.s{0`p'h6qEwNf[[{jd )ȮչLnx^x3GUDbUsU uPɪ;5H%GU`" ͹7 s (otnT!=A>ʋ%xV5ĭn;ϹLU#eZ2T%h寋5 |>Gm࡟ss cSF?|0 |5FNѹU@NTʃ_V4U ӯŋ/^*sã#\Qr1@Evz! D9F紭+'bސV<͋U:l@0瀎ċmyZ peGpyƖ+i|@/qVYX)ҟRO*yXFwpD}%Ul9C5S˭arXTH|1@%lgmy}66H/oPOɢ-bR ޡ1&g\YC#^ pJ:5+#&UI^Wo؋aLs6<B\TK~l~lg j֣3\UrisG^-~ ꃇ7Bz8ݠ7 yQ'<.,0gCOmI^Rf•IոR4e-bZ_6tbf[[ !JaOL0_ (L xy5 @BE}$3JV!dUN䕕UV֥Crie;D{0ХQ0o7iZ$N!3gxVzi!(yrp9OA-V,qYn |$!Ǚ^qXY>,`}\ЃFٜˎ6) Jg`JC\@A .zfrk'2'YK csF! ^b(@ ]H4q3M@m6O&KJڢ{sty:f1oJuWC44U!jUW+14@YeU `:V<՜MT 0W^q\q7Keu#uvg}jD̨$[i(*b(== %Bۢh `JJВcn#::/;jN1^WT@#Vu@e-WCюXŊ,H2H|жvL|`lF˄$9"+!(T ${AiabaQ^h7 SWRUV%5),iQc D*u/῞@t -t aC6I*7%>{"q@($E= X@d%)@+WԱA ,d'L h^))m6Xv}C!g*B+RP 7h3GjXcn"y~F3:"-@TGq, *|>Dtn4G/O 4K+T+{P{ᗬ&T>]@6){) M !XiK_Ϙ41 JG&B|7rRD4@ QB Sq'nsQhQXɾp(N iU6c7T&.l+ }{_X5=A` A1Q*# EBLRhE(bP15lV`-`` 29 8DieQh39 ":G3  XxЍĴJt~䳄$@a˝fYKa&8| ti-9t@:v@-nA:@ սy^»Qhr@b2(L !H5/qHx E0^D ¸V [Xd)Ċba#ڥGgcr1+qr1V?D3d`~aJcoĢҭ j*K|4 آ).⛐CY>۾nߓ)Å,&:j4kU\q4ۉT#7kĿ`'z7vOPܖX` G!` `CWˠShR0Vo5VUtݑҾg6X"'LGD)@eũ؟FWtxQSk<{A &nO!LW&)6܇FLX7D#D@F3\νEPP#dOфfBBAMWEH;! 'HZãYU_0hOp(vt!R@K4u 291FGHEcDXqјhIVk`aAs*`Cͅi',LZ[0B^eiEA iZV$$!H`1&B'N((nVA>BAGU"@B*G#NB8PKWG KLO3,|hHE$(d$yDCޓ0GR2E?::h% LʸB:MT($T NA \6LM!o)$!OA(v0MXaA]Y@(PS ZTTfLQ<ڧs<:(+@ \D .Q9|K\N,LqN% HTf!f !%}ۈ]XB09YKgfcEVAhbFA31liQW@ވB8U8Y\.Ү:L Oʾ)(ڐhc @1Ԯ%qFHf?m1Zb*LdQ&bof抬B,M0Req% (ld;%>K&*p/M#mL_F3)VtiÒ[XCp3P׃iFrԑZ~#$lF```PPPG@nf`Jppp( Vup!,&pH,Ȥrl:TZ)nT+VR%^wmujΉu9}{}B-{vzx|[[XCEDBSOMŸDCBE-BWo} &D80"At81[e%X,cǍAZT%ɓ(S\ɲ˗0cʜI͔2ɳ@ J`9*]ʴӧPJmtիXjʵ˪^ ٳhN(KnʝKݦp˷&8HA"#>;D'ǐ#K.e$X&4PL*S`(CB+pl-XP !ҡ >$S&G($^GF:1d4]TX҄Kdv#]QJ9z]&e/ipe v !Guu"!g*Jtg ]Xaa\JhC(iI (=' "w-Xʕr* ԨdiZ+K>j,0։V>,4;tK숄b{Ҵ<]+.FAvFx-p{֞8/>nf[D6+0/N&0Ol @D0qSL,\@Q`/,Bp@.AL#`ЂB0`B`4B }4-@4N% 7 oB;lm-u - q@~7{ 8Lqct1 vԂ@۔m88\'@]뼔z]vk'1\CB AB<6<0|> ނ |x?2\c͸s/1=*K>@>Dy{羦.8. ~KX6 | 0< qPCㄠA"tpT⦗?m1c6)Ws^={+`j6K``φ"& [x2\  ( d 98<.Fl i)>3bu(%⒨|r* "VVRěϛ-Z6çƥHmg]і-m{B`U[FozD/mMnt̶2m q1MR-gSw IVRBaxv$B}7:]aC[Ѩa@\[Tfʮ:#`ݽφ.d"Y۹w|/Gf+ؖ+6Gk'D-d8@O@ pZho ¼x~3aW! 7rq<;xŗaGy X@$@d.51w G6Kge k}eezxs`o( 3UKIw~*ڭmfφyWnv|J -gPpmH|Ky*m߂;h(o;+&WB{Ry %:Dv3Z+\<ضd˞&6jR>* emg^(wJtug6~7b5Z;3E$j={vw7{N3Hey2ݖtg1`G81y2 '˗4zYyE|sD} N8D$\0}|:Xst; 40PvUR4j8%uqG=J ?; NΦPGvwkvPv'1#z=ȃDპQCaF(k1::dvxktg |H1~8Z?HkcFL7fyJ'(2Nxr3`~v3S^D~K؊80KQVANgbthkƸUX5؍B'dx/戇Q90["a3y;S;`S}(n( h8f9!qڧ43Xv:#UCM5 @{d9 BȥOa&<ƶ Xnhnju%> H q3D:c4[JE-xcRFy=5= ӆMs"_Ð7yz;=&d&h4y#3]gF" gX|d4 0rgG!uE4G43  07q7M[9"c~WX5vG5xY451Շ`iFAz}c1EM9ն6vS1v9/t"3Fj(efPaw]3 @!fjCQ1GQGCGtx13|jxpxIF8}Y'rK-z)1"iUhA]v"F~sDq438WכQS^lR9&Z7tȷЕ闹:B=V:Ga)oqIJ!P9~)^\viA:WczRQ&|ͧ2Al!Bs mY5&3L 1_XW=pU镥 Ah`HFꗉJ_}%kZd.9 `ZQy!5;`Hkn?3N[A3>f 5juAH3SA,rU$1Ф zxJMS$j6YG]z"AvX)њ5A.!&ljir4>Em; 1:^O&A:Pgu3^pO$)kJ7 t4޷ȭ`/1肳' =>{o2Qʳ4vty$>V3i0'^G7PɆ/7v[51w:"clSОO gqU*sRB #> HHPZ=4vp`M75\&r RPrZY $)r G< 뗑GEM l>4A|Sy\7{q~g1.\\އ:̕|,Z#u/e'1evqA™FِCzgy2{Q2YLm" e87xc8c8c9kƅlG |<4Lea_yCPJ;2r髐\D׉|$e5jCI"{־ W=F}S=]I mvټƖ8;NqDeҷ*=) H "KĢ!rk=0i )jIu"Iu֔JGPVhi.xzH5/ʌm|]I-'ǽ "ڗg;б?+luikv`H2 r+)QqI-F XMcGrwmPQ!M2$2 4ͷ!2dGQX1320 ^6hq"c:R}: ް'W2^~3%[ 1Peb-Knhj)pitkE޳' ^tG>[5G3X?#lOS 93Xne~嘳a8=L#s3Qa}sTk>i {.+H~y:.;ܜ`u W 2FkҦ}fUT3"\e77n1Wuӿ꫃+/( 0^@Y2ydjyCO5l :ڜآ]vhNyb+ fF"S1zy5!KJ@n=S?1/x}F_$3#2^V"[,j^5-|kS |a+|hS|pvZD.萭3I:p7Tm/G::|lԆ5 B)~Vr6'`H3 K}2Q#^8àgD1|*xm']|p/Խ[Q]Kc4OkC$3Ԝ5.zjKiG};?OެxWX|"+mCt;}xĀ2~u WH')i5u){JC#"?h`"t(`-Qw,DJ%g9<x$ [ $"0[OQLSYSW[fF F%f; Zw, kIrO_aX4Xɨ1`zyIY&c/b1lf)d&HL$eEIs₯dM[6qɹ@2S.Cz&|.c` P>=*C6s^=y :\9_}lĤNgi1bŎm^,},HV|@&i]L„`@31%IeCYOSI#B`du-@JԱu` *CXbLa.r)b%VHuL EFA Ѐ%g27I@!da *"rO5a`c06c@ 7`N䙢2 $"!\DJƞ8 h1B*f!ۘqȬND}|6!le:06ܪD2 0rGR$5Mc7kMn$\S5~j>89=|&< E !GtJ:j H1'$ULw5QI}S)-UU oW<>Ya]^Tk5V9UXW5~ "Hj 1 HMAcOuoCܔXpX8ohrt9GZH` }7) EݧfIf +8cҼ%Qtu\ƀݘTs:`Q5Ӊ%F3 К@.*`D`D2 2r^Ϡ!"`W8$CY-6q5qSVU 0->͗"<2)/C6 (Qi2K#Q6^"NgU"~4̌SD&R!xW8Ox vz*oX!hC8z" F2Bm\(9@BGb<لHgR3e7B n@S(aL޼S=ĉ/agQO\g 'H81Rpfre!@#)8Y `lE  kx쥝 @?f G32>Ԡ25Kx\P!KLF87U–dX}BKI CdwZexT0ip8&Ctomi N4@IPe 6)Ãj /iUBET0Td \c|A* @PT \<bʲ K{g=xL QL Z&GWYf-.G@TtG0XCذ }|5},zE>Vx"}J3Z֑ & Atv `x#P^5̔td 9iyk*a]Eĝ ܕ iv{>z(PۤĤ2 DbǨqY )ōx1e|ʶ87^qA1YCq%;8]&ى|Xݔ0jf3M[e6&Y3+#Vqܝ nЁ\=:`,xsh!ds_g?p֊.ʱ>Sa>f a aPO`8Љjf ؂v2?!0qJ U;XK IksHW\5E+o-+$UʨlTPd$Lo ӊ ;n7 9|sIh9FG)!5a2BTk cnEե$ELp'ՒҨ,}͐6jFպMTͼ$ =Pwms(ڏº6CaK3Wy2%ŎoVQ]CSlZ 2Z4@@~ Q&0nRZ7/u 5 R.7ռOcV .sf}HxfȀ#4!b_(_ʔeY]9Ӑ;P0Aɟ\d4mlwP^ SWP4lBP>s|3/Ǯs:"qP3@iC\ހ5:mc& }JZc@>.)6' .$p%bʯdfʭD 4oo@:j fB2BNBT# # 8 F,`)+&&*l@ ګ e ʎ6 ,MIteߴdA(<^,s$~(M2#VWj /_bH l$H!g @:j ƺO@ gTJx֨4d D 59a3j(zh3 x1!Msap,8>Nl<" AH`C@k:#K۰~)r0rqaj^ f0$JEda' . ۡ Fa"!QQqe/zİVCBrNqfH􀧜D&Eњ60"%K!ä GjK`F}b'Dl$ꧤ)"DZB@Rg\VRZRAv O!Ѭ5\Q2.I-.+RX/1/P0/?0C3S1021C'wDI|R)Yz.~3j#KQT2D2m5}2LTP MN ʌ9rS ~h8pVQVPMO% d/T`kysH vJNL$< ȊMd V4!JZ!:m:ooXj?0SQ.%!> zA%6@b> K. 8%-K4CO +ban?Fi$-]8D3RQ4 . # A+Dkt,Am>CF.@ *Da p1DQ 7 |M p,| f #䴴܅j! *+F+R? ! pPdab`i Ep̸3X$f}Zµb zFfPJF3%>aj05+ GV@Pp#a2 *"9&DQ> !IU!b1bnBjUP3@>n2#G !_pAj#e9sdA]ԅtHUuNsM| w4\N/AUԀ_tARnRL.ZҤdYFPU3a+jAa@bLԁ ֵ3z6|F$)M@ 5B/ ޡ1D}uDvK\х,^U-ǁ`"m%~f 6\8JzGqhm%rr.H?A#3PS'JfsU.?byf v#us{kn ($k?~té:Q5 pW []۳ 5EN#֨hekb/tVУ:{@z != 9zvg!y i$x x243.GTk_cuJ[ ZkOar_!k @afh,hiH@ i"ڲ=tTUWUxNB&0F!g kk?fK  CsxC$d(wm -ݢ޴'=h U_Qa9<:zɺc zl8c6*nmϰ$r5:`!hyvn'Ftt@iΟ,Gb6b@Np.Oi}5NAN,6ڑ%Y@N`=hd-)z tLv6jB>wCM"92 *.aM:rtY*bp03"661Y۵Aiv-ݧy҉aJ+.θ̛#C{kj+ڏ_KCAլgm8>`f^8}s:@I !Cƌz?<ä R`c"9AE [g.9Q ;'r|{AnFۗ, ! a<}w\Q \gbί ŢVA ۂC}ͅexdxC28]<ͩ#]x[W X[]^ b]ױs!9AԅV=z~}}gCN`3+ L5v Yʙ9GDDġK`hڝGN&SVAV-'X|֞ }ک"E.\r@ .R{q9j&j"$T\>xAsd<'f/ r`Ldr5 jf:C" m28*`g"c 'g(0a r)@-#a^[i5@X aNNCɢՙa_84 tjyra;^62_ԥ^$²a"߷@)@ =gT?zK?Y7jqE˾W _Ѕ"f~' (ޞoj p7O9rL :fY!A^ Ci-d@Xh1Ds,4a+H1y5~m2V+ I 0,E ,$$,%-9-AlQJ Xb,@$uDH H4(iFZ2 9A<̢6\ ,l9n2-= ^]f*5>,di^khK73%E,DW˝ (p:vY q AU+@'U[4 H8R)$")'+L%%NT̏?e  ܀het^W8ZS'ݘ{-3,0(ݺ T.߾MS n ieS2KVVV@BnxآK^kˋqIל 9S-Yg\q' hyy20JZ]Bb])]njץ.(lK()ZhשƩuAE f I?Va%-ا1*+-\#qH3А@ J EiєF=1RR9muT0@P -D:\}91I_"P2$qg$%$،&kQ%(]F,=91_l%QO%6NP ,&Y4sB{m$FR@Ul`6/0**j}"2@ӔYܹj@c^+u]Ͷ)l ?|TRZ;9_^6&\wq0]H< cf U =D goSwr CXJ | V}<!@opzPߎr"tCZcӴ9YܣK5j8"@Q")K%,Q$$m GpAR ^#p/o%@>0WH.J0`&a A)J8A ޹>s`"psd NDThR)±T3;#N="HLbEbX#H`䈉kr"ة64$|/z IK1:(X&ӈC\[Y9>- Oˉ0 P$q# GXP$B J'H-2b`Q1IDKY X6@ueC&2!tC!  gO ,/ 6  E ค3 4'%B3ahlT m_PfD0;Hc/ C3K;qFLCӰȺNp y @?;ďʑRBT–!{Cx|AL}K WdkD?p -/@b GTYlLMNE6E A6(*RZE$ps c{/L"ǝ+NX4ZW 8sBfi,49m3sPf]57]8 "wiW!K~^awqTjBdt\s94m ]"DŶ/^Wl$^7w;7m{tbjrʇD“j0Hq'm0j ܞ R- /k% eeP)P`͵U6)[mtT(ʷ!<$ۡsV_4ԝ\8X](Ơ +,r5Bdde2.)nKB2PtUߝf>N*'wxz;(9q*R'MF\n9}[%G|Jpq]Cw0*Sc>XU>fKgi+1f1?Y D]lk8<眲}^oP~<~.Ty'Oʔ@`6 C(@Zb`jr`z` z7AY൱r 9`p\B!u0E Oq,'i_.8H1s` /|!@Y "@I!W#@j ! B@aB+-4@D\l4dO0-Mݠ ύ|!R4<] "PwU"#4޽h͠pwK& +^5C !+V!OSF8N0"*@iaa `4.A2BDٚCAjY&tD+T{`Z#$UpZ$%\#%2:Ag^ytO-]^J2m,@( eBP̬Fh !BJUaTbLǓ W,eT"w1CE*i`8B)dfe&ВClR8}Ze1 %ab ѐ6bap5H UiA'eU`PPSH&>'!fUڋ&"(,)顴ǠS*"jDp{aSdNZ2^ɞ WjR**Ekk kk5&>ACUr t  FjBL2?̔Y$pykR_FU|[0 rM6"6ؕ`!T$NԃR(H$D@:e߻~+5++1-'uPV@mY}O6\,yl,aj,Atu,+N9`IlۄIlB%IƷA"UO%AA*-*~*Β$pGH:ueD9ΥܥU!8e۶ߗm--bjh=dm.Mj4.{FIhHIuoǑW&@E7  _ `EEJSCaİpe ߲p4(4|q6?qӡ$+\Lmnf,qo11Z+$爐.#qrðaB &7 Jn=x-x,p*L@h ?g%=5p nV9i,,03r.-se,7U2 `a< 1Ԟs00+0H 0 kə*gQ5ck3@zK(ťDƈ޾PV@qEpM|\BD+;.F ;p??@t ;6A5$f4̑zL*`؁*uT"]!/˴=pg4TL#Fu4塗$23t1̙m4u(o4^XuT@j_t$.[5vt5VnXE8A^u_tuR\ZFRuO>buX[S7\AB]KduLu8zD{H5a‘Ѷ Qu4~[.qD8'e6D2ėd!'7Kדؗ| w9ܳ3cusgsCwH r&}wrVGsw|ǁvշ95kK I{KJ %Ho"&el|!o")3 GZڅ;$%,FS>Vo8f\+T.bAN4;@Sy[cykZl[Wyy?) jAJ$h58= {$[G ;Ǡz#z+3z;GWhX CB`@$.}Eyapөt_410zkUJjZPRMtL5gzz5N8,&d,U K .+ PV_ _U(ͷ$F[ǽlC)\iim|~莏H#v!;jqbzlC%H*찓A-<Wk,PɲjYk(0qe lS5hIBZlxb(k , j_Cnh9{6^r e6r3D=}Э3Gc8 kЏ7DrF8&m$8WUm}aß@-3qﮃHrT?F{ D뎮.VN~I;@6p iO{7}۫Ir?4'lY{q6Z$~g?~WlMy#ԦC"9"0D)&#v~~&37TJ99t:>W ZCbxD&ˣFSjz [C"_!pFfY e`z4 ?yv̊Cdlt|{Tz$|* 80=0-x " XD:0lymY=pՋrP nv|~ꔌnh``h0@@(8HXB5b@PO\C`Х'@ 0n݌!ӤKH0`VFE<8b#HvRlV #`! ޘ{Aji5\Coy݃ "0\k`@7ZPu& @}xg}[ڷ@! `FR q |k\$ᣨC0 aW/ UlAb-_" YCQJIs(n;X PB +r0^яzt)X6 @jv `X '8o**",B+djx 2wÀM;=\#F魤7#(Gz|@`iDD܄r05 qO{Z` =#v 'LO< (0ɩr+BH,Z Vaՙ4it!0hQ־[ Z@ 5Ď$J!"ȹGըV-sM֓4"a 0#`p ׵嬪TȔDx h܊%j൉Q¯X:o@CD!ŸJ&¸E/{w|W~َ/=ي _U*PK7Q4 s0ziHʫ/XoNnri-Ȯݒ=']BptVJji#kOƑ5b#"´.9*ߦM5j4'# w2,maZ0zB|IGщ|ɘJ&[@',z=>L=Kҁ1J$~x៭<|cKPd=  @D71,@,Pv bOXn&;@"8)/Z/IaK&LJE (]1akNr# $OQ!-NoG6!案X5PH$ gt q/qetDP pBH]vL#T,& 7Asc(iEQ WoDn @1էuT02.r#:R O +e|aY^߈$ᓠ4e6JDQD% "PZ',v7LMJ10̱54xkb]7͕hY )c ,(* Ρ/R,"kQ86Q tC%*BcEhF>ą&NQ2 &A(yNGgHnx0 Fg>IPO:WmG ^:8(^Sjm^(Ҿ< ;p㌕=+Pr1(LMǭ&.t5PPT,c !D`yl$jH0U<^+ 4PhWxK@n"65DgT> Bm 3~,@p \4N{0[tL ^I(\  p ԊRucWD5y3aMۃn=5@R `B@@+D#Vw)0Um|vw4kH, $z.DW?P-H ~Jh*  Wa81ZAyh( EG!Y<(;<4-?͙+sprAB$`>MJE׈zbj@B&ɃEglPfLGLFX[;3VCc# M k!AȎhc{Pj(V%>憀zǞl֗yrC͸(lB`&67 #g&\t:l6N a6h!wOb'us^Τ?m6#2Ί6 d Ffp=qmV6y Ϫ:rƻz՜<0~tT°nK:%]3@ r'!0 "Kgzjqqn+,IkOx9| MfmTEWfF ꬒj3.>'$REdɐΜ V'ikl} ]-UjxҸMiL7ԣʒZw R]e#ıpFPyώ/1u /qr 0Ibݭ+90;c.x!廞gp>s(!Jp'@ɳ5+%3JXT-7꘭<+,=iV`.<|ˢ="'xH=|>Ó٢j@:5T"Ja84*XѓRi̛ր1*n$'B;- $,TߊJ;IDQx `PxB,CQu?!P):D?(>S D#[kZ?%8_.4ڃXt!y} X}2J@;E蠊 @1 :kB]>D5R a ;`1H$KxG }<1`HJ>1*ꠖbQ( @ 1c'Ў"++!ЯB*_s!j˘P.`:8nX'Fk+ݒ@Їs:!<(p@ }Ppx z˪ 1Z&cV%_!t| *Cuo(J(E)SH2(j81%Iu<\n0928>JTR-h30=A v49)ɓ Q:1iQAUe܎]h: [ N̝3JDuzs˺*m1I6]+]߁uAYL^M ]g؋!W5BXP!BXqTWBꅾ ܫI H w?̅ZMLؑ, ڒ*E3+;$5b uA*X}/TI沖J m+tm$=a6-8&,%q9p)YaRr@ %% &dD^jNZ@]/PL@QE`y Нt[ǠLq/|woh!/S Ei $h%LNɍ!1d+vRR@F,a-$R Zn]h{ReqHXE%.<%0k 12HX%3i (  %\I5I^ Zbx*S ao|)ˆ)Yw\EE;O$#+ i6_> !%°A,@^(|*"%ziZ820AǍ} P{|"F=+?&V>,>x EJ5-+ĨMRkQ1пy 7!wHLipw:.Aǁ:[X=cj4>b6E%8ar !Ak( 隢zpؓ R1Hd/ݫK Ns(k(b͞Ÿ:YifmbRx93;j$-{\6,fUo $!%U5n>ް>ƅ긎ݺ6k*XgJޢAkRhd;b 'ݑ$? p (q ׀fLw\\%f7WS =(Wu/00߀ snCs1W4/5 P%W&r.X-KJ`YVy,׊??o.X9 V捍M+ζ" M9s-LHfgDZ"1RHéUG 4&t)biz3oO>jU<,pF}+UFQ30g[&<1,JOv)pD~g>ieVD-DrDJp\Å}*'/aݔsk&pPfig([FviXv%Gi1/QQ8[_ogw(hxx-/55ȉX2t;[4/X,؎{ Uu}79#h.x ZCµJ^c45P>PLgPcG p&5g[۶AX Ag:vi|8~X !pme Y8z _ezc;h[@Am:C*h]*8 w$(~ǡSHta$﬇ m=s9N}j9dz}nU*"KW؅y h ĢL* U BPf DB KmvMdeBY˝n AB@ `GĀ@fu4&$X89w'"0@Jzy z*pP0 L`hPvp0%PUP KP']gVi@qRppŨhT$+ I`RJ"aDfAC;y 0K.T+Yptbr䓐*4i)g@&4ь-tDP%m\ e uPc\"0Р Dhq3їmL Q(B".'yT)3> *"Ls'j$XED"TTUjM {6>:@`H|χ`@řry"ÅT/<¨m;'(#>~ӃQZ :SZzGD9" F'X-Mg\pIhD{^f@VbfM6$R: x "΍r`KA| 4A"dΌY(("7D8}3#Hy"?@ G<0$|.Yډ M~E3u <fE{y`BXǑ@'h$ҤaCAIRh*4J>̱ 48@@ rdIʓ,d,9_ @t@3dAFPR> *$(.4DKJvJlB eNf)RSnL*XYB`MP|<2xX" KaZe? І`4`T&= #l2m0yYІ p;i i" ;jy2 rP: xt9(' ތP(NV91Z򷆽,#"X5.Bq,{/`|ژ8,9Kh'š8A aACe .F'E ҙ4Ʌq #4It]8K~O h9oT-u!Pڔy 4"h9W͆k*O_RJf*ـZ#\`L,`B!6F̸6M XF;x1iĔ?4A |CQ7BGFyA*٢ aUʝqƈGx'<%B,`O" 0\t#a1_\X UCK#pQL1.< U%0fAJ5:E[";VPIΤDaeLFiДQfOyF |B0* ³lk$#vІ.V+*Å@@2zڢaIjWgjNk˱ ̘m1;K6hz$Ǟ?~(2UeF F «%M<誽hu`(ԗ:BaRŠKxtV"ERdѲ  yDWXb>@^%BG^$_w ,Y('~^PEpy$cTy!$va?K]9~OQFjZպWUŖ#A~;XEJQpb/{|"=ӬT-8A2QcA䩭UiB m^Y5`. Ar0il \"NkBb( hZ@ܘ,G8#:þ&lF"<7Fa):Įay1 vHK[YbY"AUu 8:zՊ6"HXS6ynkQ2s#~VuRD0GF43$*.4M6I"[@p\cɐ-\ߑw0ᙐrLn7<bxU~d-Gs#>M ]"VqFK#X0FRžAx@&d鳦>%́i*j\#lv2Xu9h&\ ,TLL?7&1gS>X8F7qBܫM:2s]v"PnD'\Wە%ӄ( X O @A4$X`7$?sB:x`C*l(0(ۄSWf"BxFWU2˶::xwVBsKPvpr'#;x'8x`X+!ܓ(!%ȁx!1+ktp#*4W~եuji' $M _6+Vv1.vpa8Q%N7Uq WUbd{VsbN u0&!HUG$*1b+U#`:SI4+$";FaD\` HMjHN?X%8D7@M"5v ƃQDN4ť/~>c~o`[  :UvB!%J& Hm`1$2me\G`8w)RgU#6|QBb(HchhX9z4'/5~D ߓQ$z~g~1#%r$#.DG P.Ӡ%G=7%} `:K  ҏOFh9i]Ias=R}O"ǐ)'Hs ^QwՓLy]( ['V6r%at'rxFq'~XXwpwlJY?b9 wt4d,buuYIP`[WDz~D5BGCx0si!^4}P9I90@ϩ .-wԀ3| 4lƚ3)!{'{& xO 1P jQ Jy d :2cm] yJȘB""DPggFAWR@)Ѣ#`(*t٤81(owCO02` f2Ie:h$*b@vd D>/"U:,"U>1B8rF=K.&y ZNpHQ#i`p u0aЙ'# V7_RzD)QG #pC+z0*%SF66|Såri@J$f*wqys9FV5: G~4,e ҧ&N XЊ6k`J`J𯼐5Vu8z8u J yC~!BDZpPF ل$8;,H:xFP:4e43__ш;G:Oc[o1Fs>saG1iMhc1z&BU}n-&+kz, O1,%А9! =>f0@A|@(@թvK k@܃ECmQB!DAOP!EFQ:!tKzqD #.bWb[G&5Dj[VGqU$jdㆋ #6kqJ`JYk{&ċtW=+D}/FR))@wKrQ Y /se:0wk 9tgD`6 :y Р쉺\L&UK\0ʬrF %&2L( ("m#:t4[;ĖYEDDWhCbPfn,О<#?kGGIf.hб k%$ ֔ѺHcurȇbN?[hP `a!BǦW. L0 2z2o5RL$^ƴ0ikmoponu`x}k^k1CwXZ"ϝg "*&ʛ׌NB@Dw D @CQ}pQ 4%Pg¤ +DWGe_AK1#!BDy@"|6h@TH^v2hN^l8PA}UX?,(9( 0$Z ˮ`D 8H WۊMH&$ y#((^C  0H*)!<3I5"X½+ӓ682#*F*$m:F)S*Up;6[D4V>F3NOx0!2hM1SLR 1PB8l@Zj 0 YjݪUn T5b^af7^3(.Dl⥎0I&r2Ŵ1cbv!OZ<=xwBp^R$&^ +$ 9e@wqЦ]6W~ ܘ)q46Aq$  l'9SE h 2Ұjd"%DF4BfT\" 6Α2X8Q=ʇ:0DoI-™U9Xq]Te5+;:iS7԰{Hs3G6٣'9B UU\ " ҼV/2)lbÀXaO _,dLFj*!$ިrYrPɋjU4a6[R-0^Cp[>9@&-ɝ5eg+ԡe.$nE[x#G^;‡C ),_o-ׂxGF2Pᴥ=Weu8#34zDpf{ [ن9gKeϳP/vVpts6y:C钀dJfaGJ8%[P7֍W k>P ױ[Zmt0 ɈuVian^*1;7+1 i ` xUqGo.M!LP*$ 48Mm=/ 0 @ m8HϢ>V9@'Ii"(J1|{]yC,}`E$7*<>EDLA GBұUC0+b_j[co]줱οv :5dAdkF|[pi=KĠr"EDa+=$:|)✑6Z}`"poIgN{t8 I^R)C)1ap}0] am$& "ӓ,레!BML?D%j iC&`*^ˤe:4" i>ƌN)c+:j4ޥ^@{P P ބʰؒ1 S 1+$m\,{+F& zi#)@k'vaB Y;Fk/ D[X#!ꯕސآ(q^ Cˋ*K+k'R k <1qFo$GKD Ԯm0ž >1 4QE>Te~G!efkn9hED80d[DTgdV*$1Qٱ$EԺ VJthBe >i2 b& `u]! c… A!!Q$۠"H"U@@F#˱ 01@BC0i B$o`QɾΈ' AH$#ˑZnR*B6B ?#)rR.$"4:lli ~Hξ: <,$ #_(oNR. " vM ^Aȱt 0 kHa+Jk&Cu@24@3.2W(3:&2B:h` G;-:-$:FHR0%L?h)I`E P6lx2r#Q9;ߤ! "{3`xJjAy)β)S2gb777!`*˨*N0&#Zp0F@5c32x*N ,(Ӯk4h:> + x4|43K-F$K4N TSbDk\0FE2B4b'@v8.2ՠMAER$92M bV`ks  x)ʘgARsRR#Une=AMEMW@M.&G"U\dZdo#~r5 H L\-aXX@33tjp"؇d4#jkƯO#V7#jTSKSAec 4B!)4v9 c|*XQ `L U4XQfj2"N D8T7EL=Uʼ#m*dEa jV=G\Q3b-rb+|6[6Car)TR6QJed,\.6jnMndLf)uS  8 W A48nj76@T ((V/T!,De2lna$dt%  anlu&`}Zoׁ@nx!,LՂ4dA!ʦ0do+w 71T_%xl[Ap 0F6+G"Hn#tInnZ!_bv0N_UUundut` cC_*, txf(d6,_Ucy-N~$<6`Wx&4smom ]~?.oya:JXDƾGm%SK\7$7rvIolUwb!w|Q&B7 v;6MeS Y0Y$t/f~Jbf‘{Vo }!c49SdDY ba@Y}g'`ǥ-+q~ty [*Dʼn^ PT 1rf7 p!2W,194! HYn%T+w$ : L8*Yd/֑Tb &TZgev}pn#8HRytY9vE"TAĭ ,Bύg*|AZVC1dTGA:E=J0}9})Scex+8MB Qc];+@+X7L nPY \d+= n3+lp]l ,;IAx%;]bs/9 #,DFThc mO%R44IBٍ 0yvPj?pzZ?] ZY11^<ΣŠp/<IA>:(;0,8ᵃ@#i 6w$^Y (}0d ~SHM x)RؓmB7{X\J.T^){>n#] vu*oL;n!pl ƴe~+}Ϋ1,1̌̏i\́)`p<~g8'QYpR1X RT0ع)] nWΠEbs~uTcci Y̥I8b`C3$CA3w2uKO>5> ykFǒib٭z!*0`Ah1Q$DǐFA! 0h6 R,q phxP a!a"@@@@D@SDdKACDCA",-lC/p_ACף2Be BDtp6v7ARD V_,`A}:wMϐx@U@:X`"MC)WND'[ ?cPggp2%B*-"@'@j&6+NG 8E ;E +"{bK?.XC(rP$8 yBu,3- tⴵ6Vl.YήDKDgժen 2 K\7!0g@X;홻u. qK͎(L ޺-h[MǼbCnRQȒ[>.jv!| ;\TƅX\1T 3mʍ@2j|3K42=t. @4;C[pwdSδK5* bQ#ç3h6>, ," cPCH8mo^bܖ@E&7F*‹I7%$&ΧHEG7!pCc# $p(:'|vBȩ|e Ao AA/ԫ 1=5dJHP!s :.w2qB|"(1BaR% f17do1CȽEl'|eHCL L⠆BC@1NUc7 -_K, f0R3bp^ Y@1 3Ίi1P)%h"RkBFOHWCG43&1^WBը-*Vz\(kO1Z]MjE:e@%L4 {(')}3%<++^ThR–`U̴x>' 0AX"3eLJtꡪ ⹭0&9iP˒Bt\nj1tʜM\BS%k.ö!-qL >zCLAJǐ3ФDw-;1D-m ‹P1o>3%6o =`4eޣ0 o5Ef|Ֆ^FN1ӯH1R(܊a DWb{=B6`sCI/8 ȉU @g r lYa9L3됓-38u܅(X]@.) ]CBRN24,Zx4yS_5g Rz9q!TgɲM碂{0w`MD{cѪNYOiw`$caYؔTu:B\:埫jͱ^Hwa7KUM-d1*?ރ嚭g?ȊspYvݕH^6 O;5o;f5?`ࠩ7}4CjW >`SୡfebxGc/a$a hUǭH+#*!{CkA $B+a),p^؈">쩅Px'6qQp9RuїK^wsZ`D֠̍gEc! m2a /TyjxY$$! = ;gb6H3-^r*`?`3 LBb9q oxsq E,M j`C|k8d6Rg0X1cᤡ:TQz4.sA "?>si,l pK†;eU [y>) CH&P\DF,D=&lnjVFcբȃ̍.jl¢_~cQڑ5\B&tbxBNc%eҤf  A:thzu ""N1"rm%,#$o"nhIRYJehϿJw%96rL[&yٕ1ch y܄ BԉI C|^( N~|/@i#d2]`Q`Q5 ~8B f:Uܤf#SjnPc`Ka¤mPAԴqY, qф'7EQ͔d @PHxdZfy"aջ!IQ_mBAT' ۡQLDxXftܘiq̈Dm mTE'v\zJsN&Ќj"+I|u~j+"|bԴ~M9U?`XeMġqRx_'?՗>,Í E)+BQkVJDt^(\L=-An9듾jiqfc2ȷ=S}V}լD-X߅BFxJ4pr4 !\ abUmΐUd=- EglvH'ș&۞F O-nq`rMG8W5+7-mtyv̑QZ`B`ІXrA$Λ Ф^?$Sy߀!(y(kVNˤeLhYi %} o (nHnΠ~m폘=ECA;IZl@Cx"z,q!vN<lNL PTUa xQ%Nĉ j˖E+F\"vlϨ֏5,AaH' Q a F!nlf,$Fp4 Rkm&Oyҡ]0TY$QfxP{Ab #&L\yΐpg$s1n-f /sqtr"Ԝ`E0*2E cY\9>9r50&Y݊Eʤ1Q$U1!L3NoE vn-0 ! (If=텏}Ch%ܭ Ӳ/hF^3sY@XAR|s oyƧŐȶ2,(Oc29!J`A^%$'81  ;5z'X utre B0wwk 13&'XgRBNnZ"@BEB_P{-USV8!3AsC glNWI29TNTIRFYR٠s838 q`rU-E{1Q&:j{XUz`byJAn=qUSSϮ:0ۅ^ gAi[Q/y(d-鮯*nWt+js=TmH@(+j64{ I-I `|$TA,Hܰ"jnӐC@`PNHAPH(zR J,5c,/J*Hݸl-l00tOLܪ$+TK:ltO PB2PFtF#EPujOچ/[/&cFCpJW?窈B*v͎9 yC l+,𣑙X`)v񃦫VzrܘifHa)` 1@eX|Lb@Y+"K_}%xfؙxxqq'$~9/Ay q& +ˆ`koGr㷊0g8C !j*o g " mbCZ|9XQ L6ns @4͂(B3-@"hP2# :^1MRƭD9R5ZR򲶜Ueh™)"l71PYJC׌dԠ0K,vz0![d(av 0: ʃKL,@W ͎_; $A3J/b9ԦuA *N,sVeҊxb[bʷzf]Fz1Xn$ VQOGT1;'Vf,H8mn,[[ضVmnd ]moO[wָRc{M+$mR"ŮUmqvewA"Z| ŘAF010IVH9i8s rxd .j- %BAym\F2|&خvbQCU#Powy3 UGz9dXW &q :U[3 KJ`8ƖDM##:[\IqzL A0]qM@BPLy :u|YfsuT@:t(I$ct4 ])5B}h,MC8&Ҙv˘2!W"faC\D/ I!WpvtvƳa5V9*yPp hLJ6n|cBh8.mAfXu(*6&d$dr &o?Nul3 V\AR2É%R׊Q.I)O6r 1W敢Pdb(7ͩh AUYU;qCfd(Z^F4̼' Myb|RCUDx$puVӘx@>_Cɳ*@{I|'J=Fғ3:ne }DZ"`L8t*6jfK^!B\ಱl?to+$ìCkJ@Z$ ^@\@4\Z8UV0$B011"& &:$B*H?Ak :/~q|2D zYq1yI B*B0 HBX2`"p6k"))@@F i7#ZaC:DB;/JxӦb-;C2``j88 QbGpKiXEfOPD` Z;L( '!xHmpeZ1Ѥ'CP`#(ADPq:wf;B7iJ;<ħsrP?G-tu$xtQt˂ !"#;ǤAZxr(q! AH9=?( |8ibR1O5 G fDI_QY`I\G29!}z( @ǐY8؅&^(B&"&J2@IA@ŇdDC&,I/c!b&L̆);JZD t̚%x&`ȵ+F\TI&Ӧ{ǮrDM!QM:`My_/01+CjՋU2Ȁ8ф'3ō- O)R*R+Ք H}6(4hͩjƙc@ @&='VSn,/e0-!)Is| R^ 9=Q;2<4=MAmi}"?X3,>ӄĔtHIJ-ɤ)( H%t GŊUMVRKm5@uL?eCU^pbUC''kձK"&C4'g6 @ 8}Xm(Ї>Ғ0S$՚}5a3c`q? !,Pt9t+(G(7Ջ+UzUU9G0l|C0!5=SFٗչ~YfBi X7SyX/7j\:5%p٢EEZ-ُ١EYYYpZ5ZZEZ7dXnXy F]S}%ZsIKr[ [\BKi0ؐ#1XT ZgP۾13~ny\LԉEB [NڠEV{Y<R]BKQ')pEp EMpnlpp1(-j/)R=Q;}9ꀝCTj@Gq'P -ZӢj]IщSPjz+t\`Pq[#b#MМN,S]}^aE\w?6|knέfX {e~<@f.\K1ԡK¥#V+1@l:Ш3 ZQvzx̤^znX-|.t,P`pK LBJe{B{EBLML-rNL xPfdbjbve} Nw-{}Ӗ-Me֮rnRaRYMKzȖ_A6IAj]mQ&[Kfd dق+~O ѧmQ-9Rѣ=}:NL'jfsD^J J+f, j1(P8a0Be6"@P<8P6N2 2pԾ*@d@tdlxe4`*; nrz[]XHPg ‚B( PF dylYiJ4'M )3/M*X % 21 1weI =ci  \ -P kN!}lWQ%o }܇hUD! 0\-T? HWDxcPcT+ 04Q0S~_=&8p[F|6"ى 6h@B@@ @Q&**u@z-pI%[#L!|Q:vpZYB @޴@ DdV6k6UQoMu9q#GIbf$<9YSҵCjreNj.#k>*T Z)@RJs{8EI$fBPGl@lr[6h1`&DqE:ʧB<ܹ">bUbHӦf`D%ނ:cgD@n PؒưIPp6ۚ <`4 eg' M@Zq@iS˼RPXn"vdY'W!yT {?k\O}uS+58r5\G.)[c66(W+(o-r< C y[ˁ>nBW޶7r0A2,p(RR6A`8x|%tQ¬[(!.ZDžIr Q 'lh "JQ Q;xR Q( +q1b;x)02(@ąITr«hj 3Q9oL#a/7M _aFq.*#I6XE ;YG)%|938opҜMQ,7ٱX[zݐ;R%2t?/jPX!ϬqNaNw8dvCNs>ӔvKI@VyGo#ggPBT NPg!1jFOe3|"R#\dts܆ IY‘6d^hTV` lr+)) Œ1hl[*('yH l  b2 8G M/ȬGJVfc@*gʅ2H+e.C \Jl.E*LnM}L&+D겋K˖KGCn:Ka֌"ꦔ0a3:F:@UYbYa ,!1eRMY]?<~k|]ĻV}Ą59iq[)+,"$@QA[[raLL˅F2UH0ҠH"~iI^KK /俊F9&;lS ^d2Z>Y~u[\yِL[zD!1NΝmFRz̄ IpQQkn;_Z@tPsk|@! E1/Y([mK\48Н$LfU$M `|P,コ*|@4/疹!:XY9LFJv-D\%C eLL JFI[Opj?g@mJt/]/;η@ۛ} 80l@:lN<M4|/=X O hBM ~.U^s ~NĀMtBpS o7B췁Xh U 5<\Mk@{䀺PZ#+3"Hng'8x4HkhKI.a|3`EcW`i#p]?=p1zs^f**C"wwAɀj3(hy׆IzXQy7~POVr[Z)Lx7v؄b mU"p5,ctrp-a8SUK$baDqx"qtPWc7, b`/f .:1WX :6,1uc2g[gY`Ԉ>h4Γ{9#1 ! t9PGԡ\ 4ksh U) X?/c`DcqqP6@6V a*PX\A/SW9V pC0Qdsr6RS^)3 1:9 Xd@RК $dn@b87W`[/`LQg6|B j  v](rqCSNaoY XZj# 3*`!kmcI&0\*ER Sd<zfC0.KːaEhma"zFBgfs !RdYqQY„( V\"CC6V0g[6"sA>=Y$:^ZjNJ.C>]G:K}`2EP\f# ⠤p#5J"p.Zµc")c:3t +QJ`gW 6HM N+j,Į z:O\(=ZFOPP7kP2$[.@ {}۸E"1PN `Gcs/D>6&48 kMX|A@| ᫃!CQ2b!AFT[S$\&Id@JK;g O@+E`p[ 䰷|{p{ ΩK`,RЯh(8"GyvԹP + Z`(2a"AHTb)@R 3b[<[[£!'L)#GFC>A<ً=K41m+ 9V]558*(cdH=۱bэlzih/3hWCOTFTo6TIB rD=Xl feRq9J]V0"%bR1S.9i8B(!%y$V{(X^K DhKV+ `a5,rQF P#Y=S9!`&IgPcX{8k !8B=Vj%qO^n0ڭ7|*|`dխ yMɷzډ*aai G2XZUh>`-pʢL4j!zd_)[p ngjc>WB%aσ*ŪxwJkdb'n4॓ ebsnQ`g=$1bsΈ+_ӭ΀T\, ^$yV$儤 d4ޚ@\.k,"S­%!;aؚA :|ԣs +x59f:XlNjΌ,|h:jiX"kdw(L**g츸`҄?rbmS),ۺ(۳1P29Ȑt/, !%$<Ø r ϡ| ,d-!U*>ebC>'b4dZV{F Z y9q k:ߎ(9a`bX"`~axTv3b4V @`" "ZƼFHOQRYO" Z0[[ j/g6[+/Zؠ.x r 9r  ݋RAZ-)d=Lc@%$dyB2 Ō-C@ $p#VD&@IcdJ(6:)zY@L!Pd%!-EYEK 2>P$P2P[Dmx HW-!_!:*LTѠcŎ\jKg_Qyނws3[EZtկd=iu&=fnۦK=ɨF)ͿԆ $ϧ_=r秃.}~ZKncϿ5O" LOP@)4>*psPCr Q &԰P þq :Qp93t& }γ[!!I9`7HH 7tDG `"@. `ʘ<,*$\( @`*Ю(OTڂ)K #]$ çJd,1J I%nKX4InH@93u8$O!heE+6 h"#]C,iKhdW$/ynC CTVR}F.NXn^FV] &,ŠI뼘.mߐ%X\"dE D^qf5(lH)dM 0S [.N[n~*FnJH` Y+ "H])Nj$rcg6%//j ~oj?L /52'>U١R֙qȊ?_8qMʊՋ+q(s&.6suj8O歚 C`a5KsVf5k>@!g\&7%k   p,Ctij nV#H=c_CA~^ !֠{e 2D = kN,pA[_ᓐLpG"vFXG_hԔE ^-}@C^w퐐7a>! GV Gq/0Œ%%`'9BT"P @$QJ ! HErv| $}e3Fh73+ ?X&=\ .#lR3XV2Yf7L@f9ѹtRH!:sNx5ߤ |6;[iȓՌ=_9I3 A џ T(IF O"F45 oKFդ)#kP > _(Z'8L?n΄jk̮ ( 2]\lW#HYZf]A}MCS'Vp 9 <Ɂ 0>AC_o$( Mk7 U0gv.%% Ĵz@|-FZ9B0 Hwm]šH؏wM )/r\O"D*^]<?cZEW.wmAo!7kǯ486p_iV:`"`M[IR/`|YE?QDf#N&ѥ´:w &kLlGmFH‚NG+>B`AAv֜{G U]k 7az?wwSy. H'M֫ yl "q <ƅ4/(( ?b7/! #A$ yZ4B~X tlH%d;t`"sGoFpEؠABFDI .7f-*K[ pz2BD%fbfe ʹnG2bajax ˅ Ȉ,AoՔ'¬b(  `@Ъ/T P60%Q)2SQ% !hdfZ/JL6HÀj"z!YqH."jѠ5tcZ%CZdI%۠ۆ|!b4 f" Āq޶5ܦeT?ر[- 1q  asn R- E ސk.A2"T..X % d##mNAJ,2$g$à-FcMN ̮%6lm5Ԃ캠KF9:)Q j$qݘW 0 eҗF!{W%V̱J9 ;0J~JI2:(g< ,I'kZXoHP a2E$$w s~(NσS2qg갺rlXFT3A0/ΎX \2f>P 7%[%Ia/%@l1=g4:?J`ώ&.2Z7_'[0 2o;C!& 0)LoQ3Do5\eg\R9}$ty ?8.[M__ ernȥ2gܬ ba( V'.R0Gd& W&DMDF xl2_%Dуlr%,tdۣ] jW8*/J(W*rjHdkohˉ_sLx2bk |n`0>=5 coT_%(Sak VgʌJhVE:C)>ߡNv#Bs 1Papw|,7^xAdxgoϣ]1fWxvbC v@-Vag0:a'woܖz5O3!PcZ". UME/p+ ja  %̤r5|c,PR *%SE"X"S:XW"{ h:"/D"J,BHEVXP@f Lb2}T E aO>^+ ÈCss (("|)C xnWtRG5F" qrSf)9PX `sXa2pj'XqR(t&_L.T )&d7/ gZ%grZ,A\>ٛуp$1@ = #ج|H' 6/Թ@% {Z$5mKB.((B 55bsHr0]=,:k@x,]~&H z@P8nz3s$ԥ/XT jFЂ;< n:1ͺh h/ͮ`Ű߶?x-/5QjF> 6s̴ENPp ":\C ?ȈwJL*E4hgрG@=ԛ[’Wb?\+%|q5J@[!:û=^=ҩy\\"\<`| dҔ|ɇ|Dʕ#W\kP_[ |ټ<|<ϛ<=+ =};PK PK(@AOEBPS/diagrams.htm Schema Diagrams

4 Schema Diagrams

This chapter contains diagrams of sample schemas.

Sample Schema Diagrams

Figure 4-1, "HR and OE Schemas". illustrates HR and OE schemas and their relationship. Note that the scripts and table descriptions for these two schemas are in section "HR Schema" and "OE Schema" , respectively.

Figure 4-2, "PM Schema" illustrates the PM schema. Note that the scripts and table description for the PM schema are at "PM Schema" .

Figure 4-3, "SH Schema" illustrates the SH schema. Note that the scripts and table description for the SH schema are in section "SH Schema" .

This edition of the book does not illustrate the IX schema, but its scripts and table description are in section "IX Schema" .

Figure 4-1 HR and OE Schemas

Description of Figure 4-1 follows
Description of "Figure 4-1 HR and OE Schemas"

PK7e PK(@AOEBPS/img_text/comsc009.htm+ Description of the illustration comsc009.gif

This figure shows the structure of the PM schema and its relationships with the oe.product_information table.

The online_media table has the following attributes:

  • Columns: product_id(primary key), product_photo, product_photo_signature, product_thumbnail, product_video, product_audio, product_text, product_testimonials. Note that the type for product_photo_signature, ORDImageSignature, has been deprecated.

  • Other Relationships:

    • Column product_id relates one or more rows of the table online_media to one row of the table oe.product_information with the corresponding value of product_id.

The online_media table has the following attributes:

  • Columns: product_id(primary key), ad_id, ad_composite, ad_sourcetext, ad_finaltext, ad_fltextn, ad_textdocs_ntab, ad_photo, ad_graphic, and ad_header

  • Other Relationships:

    • Column product_id relates one or more rows of the table print_media to one row of the table oe.product_information with the corresponding value of product_id.

PK,BIPK(@AOEBPS/img_text/comsc010.htmM" Description of the illustration comsc010.gif

This graphic describes the tables in the SH schema.

The costs table has the following attributes:

  • Columns: prod_id, time_id, promo_id, channel_id, unit_cost, and unit_price

  • Relationships:

    • Column prod_id relates one or more rows of the table costs to one row of the table products with the corresponding value of prod_id.

    • Column time_id relates one or more rows of the table costs to one row of the table times with the corresponding value of time_id.

The products table has the following attributes:

  • Columns: prod_id (primary key), prod_name, prod_desc, prod_subcategory, prod_subcategory_id, prod_subcategory_desc, prod_category, prod_category_id, prod_category_desc, prod_weight_class, prod_unit_of_measure, prod_pack_size, supplier_id, prod_status, prod_list_price, prod_min_price, prod_total, prod_total_id, prod_src_id, prod_eff_from, prod_eff_to, and prod_valid

  • Relationships:

    • Column prod_id relates rows of the table products to one or more rows of the table sales with the corresponding value of prod_id.

    • Column prod_id relates rows of the table products to one or more rows of the table costs with the corresponding value of prod_id.

The promotions table has the following attributes:

  • Columns: promo_id (primary key), promo_name, promo_subcategory, promo_subcategory_id, promo_category, promo_category_id, promo_cost, promo_begin_date, promo_end_date, promo_total and promo_total_id

  • Relationships:

    • Column promo_id relates rows of the table promotions to one or more rows of the table sales with the corresponding value of promo_id.

The sales table has the following attributes:

  • Columns: prod_id, cust_id, time_id, channel_id, promo_id, quantity_sold, and amount_sold

  • Relationships:

    • Column prod_id relates one or more rows of the table sales to a row of the table products with the corresponding value of prod_id.

    • Column promo_id relates one or more rows of the table sales to a row of the table promotions with the corresponding value of promo_id.

    • Column channel_id relates one or more rows of the table sales to a row of the table channels with the corresponding value of channel_id.

    • Column cust_id relates one or more rows of the table sales to a row of the table customers with the corresponding value of cust_id.

    • Column times_id relates one or more rows of the table sales to a row of the table times with the corresponding value of times_id.

The channels table has the following attributes:

  • Columns: channel_id (primary key), channel_desc, channel_class, channel_class_id, channel_total, and channel_total_id

  • Relationships:

    • Column channel_id relates rows of the table channels to one or more rows of the table sales with the corresponding value of channel_id.

The customers table has the following attributes:

  • Columns: cust_id (primary key), cust_first_name, cust_last_name, cust_gender, cust_year_of_birth, cust_marital_status, cust_street_address, cust_postal_code, cust_city, cust_city_id, cust_state_province, cust_state_provice_id, country_id, cust_main_phone_number, cust_income_level, cust_credit_limit, cust_email, cust_total, cust_total_id, cust_src_id, cust_eff_from, cust_eff_to, and cust_valid

  • Relationships:

    • Column cust_id relates rows of the table customers to one or more rows of the table sales with the corresponding value of customer_id.

    • Column country_id relates one or more rows of the table customers to one row of the table countries with the corresponding value of country_id

The times table has the following attributes:

  • Columns: time_id (primary key), day_name, day_number_in_week, day_number_in_month, calendar_week_number, fiscal_week_number, week_ending_day, week_ending_day_id, calendar_month_number, fiscal_month_number, calendar_month_desc, calendar_month_id, fiscal_month_desc, fiscal_month_id, days_in_cal_month, days_in_fis_month, end_of_cal_month, end_of_fis_month, calendar_month_name, fiscal_month_name, calendar_quarter_desc, calendar_quarter_id, fiscal_quarter_desc, fiscal_quarter_id, days_in_cal_quarter, days_in_fis_quarter, end_of_cal_quarter, end_of_fis_quarter, calendar_quarter_number, fiscal_quarter_number, calendar_year, calendar_year_id, fiscal_year, fiscal_year_id, days_in_cal_year, days_in_fis_year, end_of_cal_year, and end_of_fis_year

  • Relationships:

    • Column time_id relates rows of the table times to one or more rows of the table sales with the corresponding value of time_id.

The countries table has the following attributes:

  • Columns: country_id (primary key), country_iso_code, country_name, country_subregion, country_subregion_id, country_region, country_region_id, country_total, country_total_id, country_name_hist

  • Relationships:

    • Column country_id relates rows of the table countries to one or more rows of the table customers with the corresponding value of country_id.

PK!eR"M"PK(@AOEBPS/img_text/comsc008.htm3 Description of the illustration comsc008.gif

This figure shows the tables in the HR schema and the columns in each table, as well as dependencies between the tables.

The employees table has the following attributes:

  • Columns: employee_id (primary key), first_name, last_name, email, phone_number, hire_date, job_id, salary, commission_pct, manager_id, department_id.

  • Relationships:

    • Column department_id relates each row of the table employees to exactly one value of department_id in the table departments

    • Column job_id relates each row of the table employees to exactly one value of job_id in the table jobs

    • Column employee_id relates each row of the table employees to none or more rows of employee_id in the job_history table

    • Column manager_id references none or one other row of the employees table through a matching employee_id; note that a head of the company would typically not have a manager

  • Other relationships:

    • Column employee_id relates rows of the table employees to sales_rep_id columns in the table oe.orders

    • Column employee_id relates rows of the table employees to account_mgr_id columns in the table oe.customers

The jobs table has the following attributes:

  • Columns: job_id (primary key), job_title, min_salary, and max_salary

  • Relationships:

    • Column job_id relates each row of the table jobs to the corresponding values in the jobs_id column of the table employees

    • Column job_id relates none or more rows of the table jobs to the corresponding values in the jobs_id column of the table job_history

The job_history table has the following attributes:

  • Columns: employee_id and start_date (a composite primary key), end_date, job_id, and department_id.

  • Relationships:

    • Each job_history record is associated with a record in the table employees through the employee_id.

The departments table has the following attributes:

  • Columns: department_id (primary key), department_name, manager_id, and location_id.

  • Relationships:

    • Column department_id relates each row of the table departments to none or more rows of the table employees that have corresponding values for department_id.

    • Column manager_id relates each row of the table departments to a row of the table employees that has the corresponding value for employee_id.

    • Column location_id relates each row of the table departments to a row of the table locations that has the corresponding value for location_id.

The locations table has the following attributes:

  • Columns: location_id (primary key), street_address, postal_code, city, state_province, and country_id.

  • Relationships:

    • Column location_id relates each row of the table locations to none or more rows of the table departments that have the corresponding values for location_id.

    • Column country_id relates each row of the table locations to a row in the table countries that has the corresponding value for country_id.

  • Other relationships:

    • Column location_id relates rows of the table locations to none or more rows of the table eo.warehouses that have the corresponding values for loacation_id.

The countries table has the following attributes:

  • Columns: country_id (primary key), country_name, and region_id.

  • Relationships:

    • Column region_id relates each row of the table countries to a row in the table regions that has the corresponding value for region_id.

    • Column country_id relates each row of the table countries to none or more rows in the table locations that have the corresponding values for country_id.

The regions table has the following attributes:

  • Columns: region_id (primary key), and region_name.

  • Relationships:

    • Column region_id relates rows of the table regions to none or more rows of the table countries that have the corresponding values for region_id.

This graphic also describes the OE schema and shows the dependencies between the two schemas.

The order_items table has the following attributes:

  • Columns: order_id (primary key), line_item_id, product_id, unit_price, and quantity.

  • Relationships:

    • Column order_id relates one or more rows of the table order_items to one row of the table orders with the corresponding value of order_id.

    • Column product_id relates one or more rows of the table order_items to one row of the table product_information with the corresponding value of product_id.

The orders table has the following attributes:

  • Columns: order_id(primary key), order_date, order_mode, customer_id, order_status, order_total, sales_rep_id, promotion_id

  • Relationships:

    • Column order_id relates one row of the table orders to one or more rows of the table order_items with the corresponding values of the order_id.

    • Column customer_id relates one or more rows of the table orders to one row of the table customers with the corresponding value of customer_id.

  • Other Relationships:

    • Column sales_rep_id relates one or more rows of the table orders to one row of the table hr.employees with the corresponding value of employee_id.

The product_information table has the following attributes:

  • Columns: product_id(primary key), product_name, product_description, category_id, weight_class, warranty_period, supplier_id, product_status, list_price, product_id, min_price, and catalog_url

  • Relationships:

    • Column product_id relates one row of the table product_information to one or more rows of the table order_items with the corresponding value of product_id.

    • Column product_id relates one row of the table product_information to zero or more rows of the table product_descriptions with the corresponding value of product_id.

    • Column product_id relates one row of the table product_information to zero or more rows of the table inventories with the corresponding value of product_id.

The product_descriptions table has the following attributes:

  • Columns: product_id and language_id (composite primary key), translated_name, and translated_description

  • Relationships:

    • Column product_id relates one or more rows of the table product_descriptions to a row of the table product_information with the corresponding value of product_id.

The inventories table has the following attributes:

  • Columns: product_id and warehouse_id (composite primary key), and quantity_on_hand.

  • Relationships:

    • Column product_id relates one or more rows of the table inventories to one row of the table product_information with the corresponding value of product_id.

    • Column warehouse_id relates one or more rows of the table inventories to one rows of the table warehouses with the corresponding value of warehouse_id.

The customers table has the following attributes:

  • Columns: customer_id (primary key), cust_first_name, cust_last_name, cust_address, phone_numbers, nls_language, nls_territory, credit_limit, cust_email, account_mgr_id, cust_geo_location, date_of_birth, marital_status, gender, and income_level

  • Relationships:

    • Column customer_id relates rows of the table customers to one or more rows of the table orders with the corresponding value of customer_id.

  • Other Relationships:

    • Column acct_mgr_id relates one or more rows of the table customers to one row of the table hr.employees with the corresponding value of employee_id.

The warehouses table has the following attributes:

  • Columns: warehouse_id (primary key), warehouse_spec, warehouse_name, location_id, and wh_geo_location

  • Relationships:

    • Column warehouse_id relates rows of the table warehouses to one or more rows of the table inventories with the corresponding value of warehouse_id.

  • Other Relationships:

    • Column location_id relates one or more rows of the table warehouses to one row of the table hr.locations with the corresponding value of location_id.

PKwJ33PK(@A OEBPS/toc.ncx0 Oracle® Database Sample Schemas, 11g Release 2 (11.2) Cover Table of Contents List of Examples List of Figures List of Tables Oracle Database Sample Schemas, 11g Release 2 (11.2) Preface Overview Installation Rationale Schema Diagrams Sample Schema Scripts and Object Descriptions Index Copyright PK5 0 PK(@AOEBPS/installation.htm&wو Installation

2 Installation

During a complete installation of your Oracle Database, the sample schemas can be installed automatically with the seed database. If the seed database is removed from the system, you will need to reinstall the sample schemas before you can perform the steps given in the examples that you find in Oracle documentation and training materials.

This chapter describes how to install Sample Schemas. It contains the following sections:

  • Using the Database Configuration Assistant

  • Manually Installing Sample Schemas

  • Resetting Sample Schemas


    Caution:

    By installing any of the Oracle Database Sample Schemas, you will destroy any previously installed schemas that use any of the following user names:
    • HR

    • OE

    • PM

    • SH

    • IX

    Data contained in any of these schemas will be lost if you run any of the installation scripts described in this section. You should not use Oracle Database Sample Schemas for your personal or business data and applications. They are meant to be used for demonstration purposes only.


Using the Database Configuration Assistant

When you install Oracle Database with the Oracle Universal Installer, the sample schemas are installed by default if you select the Basic Installation option. Selecting the sample schemas option installs all five schemas (HR, OE, PM, IX, and SH) in the database. If you choose not to install the sample schemas at that time, you can add them later by following the instructions in section "Manually Installing Sample Schemas".

At the end of the installation process, a dialog box displays the accounts that have been created and their lock status. By default, all sample schemas are locked and their passwords are expired. Before you can use a locked account, you must unlock it and reset its password. You can unlock the accounts at this point in the installation process. Alternatively, after the installation completes, you can unlock the schemas and reset their passwords by using the ALTER USER ... ACCOUNT UNLOCK statement. For example:

ALTER USER hr ACCOUNT UNLOCK IDENTIFIED BY Password;

See Also:

"Guidelines for Securing Passwords" in Oracle Database Security Guide for guidelines related to creating secure passwords

The sample schemas available to you depend on the edition of Oracle Database that you have installed and its configuration. Refer to the following table:

SchemaOracle Database Personal editionOracle Database Standard editionOracle Database Enterprise edition
HROKOKOK
OEOKOKOK
PMOKOKOK
IXOKOKOK
SHNot availableNot availableNeeds Partitioning Option installed

Manually Installing Sample Schemas

If you decide not to install the sample schemas at the time of your initial database installation using DBCA, then you can also create the sample schemas manually by running SQL scripts. Install Oracle Database Examples (Companion CD, part of the media kit) to include these scripts in the demo directory under $ORACLE_HOME.


See Also:

Oracle Database Examples Installation Guide for download and installation information

Schema Dependencies

Various dependencies have been established among the schemas. So, when you create the schemas manually, you must create them in the following order: HR, OE, PM, IX, and SH.

Use this sequence to create the schemas:

  1. Create the HR schema.

  2. Create the OE schema: The HR schema is already present, and you must know the password for the HR schema to grant HR object privileges to OE. Some HR tables are visible to the OE user with the use of private synonyms. In addition, some OE tables have foreign key relationships to HR tables.

  3. Create the PM schema: Foreign key relationships require that the OE schema already exist when the PM schema is created. You must know the password for OE, to grant to PM the right to establish and use these foreign keys.


    Note:

    The PM schema requires the database to be enabled for the Java Virtual Machine (JVM) and interMedia. You can accomplish this during installation or later using the DBCA.

  4. Create the IX schema: The information exchange schema IX is based on order entry data in OE. Again, foreign key relationships require that the OE schema already be present when the IX schema is created. You must know the password for OE to grant to IX, the right to establish and use the foreign keys.

  5. Create the SH schema. The SH schema logically depends on the OE schema, though you can create this schema without creating the other four schemas.

Guidelines for Installing Sample Schemas

All scripts necessary to install sample schemas reside in $ORACLE_HOME/demo/schema directory. Before you install sample schemas by running these scripts, follow these guidelines:

  1. You must connect as a system administrator using the SYSDBA privilege.

  2. When prompted to enter a password for the schema, enter a secure password that meets the requirements described in Oracle Database Security Guide.

  3. When prompted for tablespace names while running scripts:

    • Enter an appropriate tablespace name, for example, users as the default tablespace for a schema

    • Enter temp as the temporary tablespace for a schema

  4. When prompted for the log directory name, enter $ORACLE_HOME/demo/schema/log/ or any other existing directory name.


Note:

Make sure that you end the log directory name with a trailing slash, for example, $ORACLE_HOME/demo/schema/log/

Installing the HR Schema

All scripts necessary to create the Human Resource (HR) schema reside in $ORACLE_HOME/demo/schema/human_resources.

You need to call only one script, hr_main.sql, to create all the objects and load the data. The following steps provide a summary of the installation process:

  1. Log on to SQL*Plus as SYS and connect using the AS SYSDBA privilege.

    sqlplus connect sys as sysdba
    Enter password: password
    
  2. To run the hr_main.sql script, use the following command:

    SQL> @?/demo/schema/human_resources/hr_main.sql
    
  3. Enter a secure password for HR

    specify password for HR as parameter 1:
    Enter value for 1:
    

    See Also:

    Oracle Database Security Guide for the minimum password requirements

  4. Enter an appropriate tablespace, for example, users as the default tablespace for HR

    specify default tablespace for HR as parameter 2:
    Enter value for 2:
    
  5. Enter temp as the temporary tablespace for HR

    specify temporary tablespace for HR as parameter 3:
    Enter value for 3:
    
  6. Enter your SYS password

    specify password for SYS as parameter 4:
    Enter value for 4:
    
  7. Enter the directory path, for example, $ORACLE_HOME/demo/schema/log/, for your log directory

    specify log path as parameter 5:
    Enter value for 5:
    

After the hr_main.sql script runs successfully and the HR schema is installed, you are connected as the user HR. To verify that the schema was created, use the following command:

SQL> SELECT       table_name FROM user_tables;

Running hr_main.sql accomplishes the following tasks:

  1. Removes any previously installed HR schema

  2. Creates the user HR and grants the necessary privileges

  3. Connects as HR

  4. Calls the scripts that create and populate the schema objects

For a complete listing of the scripts and their functions, refer to Table 5-1.

A pair of optional scripts, hr_dn_c.sql and hr_dn_d.sql, is provided as a schema extension. To prepare the HR schema for use with the directory capabilities of Oracle Internet Directory, run the hr_dn_c.sql script. If you want to return to the initial setup of the HR schema, then use the hr_dn_d.sql script to undo the effects of the hr_dn_c.sql script.

Use the hr_drop.sql script to drop the HR schema.

Installing the OE Schema and Its OC Subschema

All scripts necessary to create the Order Entry (OE) schema and its Online Catalog (OC) subschema reside in $ORACLE_HOME/demo/schema/order_entry.


See Also:

Guidelines for Installing Sample Schemas before you run oe_main.sql

You need to call only one script, oe_main.sql, to create all the objects and load the data. Running oe_main.sql accomplishes the following tasks:

  1. Removes any previously installed OE schema

  2. Creates the user OE and grants the necessary privileges

  3. Connects as OE

  4. Calls the scripts that create and populate the schema objects

After the oe_main.sql script runs successfully and the OE schema is installed, you are connected as the user OE. To verify that the schema was created, use the following command:

SQL> SELECT table_name FROM user_tables;

For a complete listing of the scripts and their functions, refer to Table 5-10.

The oe_drop.sql and oc_drop.sql scripts are used to drop the OE schema and OC subschema, respectively.

Installing the PM Schema

All scripts necessary to create the Product Media (PM) schema reside in $ORACLE_HOME/demo/schema/product_media.


See Also:

Guidelines for Installing Sample Schemas before you run pm_main.sql

You need to call only one script, pm_main.sql, to create all the objects and load the data. Running pm_main.sql accomplishes the following tasks:

  1. Prompts for passwords and tablespace names used within the scripts as well as datafile and log file directories

  2. Removes any previously installed PM schema

  3. Creates the user PM and grants the necessary privileges

  4. Connects as PM

  5. Calls the scripts that create and populate the schema objects

After the pm_main.sql script runs successfully and the PM schema is installed, you are connected as the user PM. To verify that the schema was created, use the following command:

SQL> SELECT table_name FROM user_tables;

For a complete listing of the scripts and their functions, refer to Table 5-19 .

The pm_drop.sql script is used to drop the PM schema.


Note:

The SQL*Loader data file pm_p_lob.dat contains hard-coded absolute path names that have been set during installation. Before attempting to load the data in a different environment, you should first edit the path names in this file.

Installing the IX Schema

All scripts necessary to create the Information Exchange (IX) schema reside in $ORACLE_HOME/demo/schema/info_exchange.


See Also:

Guidelines for Installing Sample Schemas before you run ix_main.sql

To install the Information Exchange (IX) schema, you need to call only one script, ix_main.sql, which creates all the objects and loads the data.

Running ix_main.sql accomplishes the following tasks:

  1. Prompts for passwords and tablespace names used within the scripts

  2. Removes any previously installed IX schema

  3. Creates the user IX and grants the necessary privileges

  4. Connects as IX

  5. Calls the scripts that create and populate the schema objects

After the ix_main.sql script runs successfully and the IX schema is installed, you are connected as the user IX. To verify that the schema was created, use the following command:

SQL> SELECT table_name FROM user_tables;

For a complete listing of the scripts and their functions, refer to Table 5-23.

The ix_drop.sql script is used for dropping the IX schema.

Installing the SH Schema

All scripts necessary to create the Sales History (SH) schema reside in $ORACLE_HOME/demo/schema/sales_history.


See Also:

Guidelines for Installing Sample Schemas before you run sh_main.sql

You need to call only one script, sh_main.sql, to create all the objects and load the data. Running sh_main.sql accomplishes the following tasks:

  1. Prompts for passwords and tablespace names used within the scripts as well as datafile and log file directories

  2. Removes any previously installed SH schema

  3. Creates the user SH and grants the necessary privileges

  4. Connects as SH

  5. Calls the scripts that create and populate the schema objects

After the sh_main.sql script runs successfully and the SH schema is installed, you are connected as the user SH. To verify that the schema was created, use the following command:

SQL> SELECT table_name FROM user_tables;

For a complete listing of the scripts and their functions, refer to Table 5-27.


Note:

The dimension tables PROMOTIONS, CUSTOMERS, PRODUCTS and the fact table SALES are loaded by SQL*Loader, after which directory paths are created inside the database to point to the load and log file locations. This allows the loading of the COSTS table by using the external table sales_transactions_ext.

A pair of optional scripts, sh_olp_c.sql and sh_olp_d.sql, is provided as a schema extension. To prepare the SH schema for use with the advanced analytical capabilities of OLAP Services, run the sh_olp_c.sql create script. If you want to return to the initial setup of the SH schema, then use the script sh_olp_d.sql to undo the effects of sh_olp_c.sql and reinstate dimensions as they were before.

The file used to drop the SH schema is sh_drop.sql.

Resetting Sample Schemas

To reset sample schemas to their initial state, use the following syntax from the SQL*Plus command-line interface:

@?/demo/schema/mksample systempwd syspwd hrpwd oepwd pmpwd ixpwd shpwd bipwd default_tablespace temp_tablespace log_file_directory/

The mksample script expects 11 parameters. Provide the password for SYSTEM and SYS, and for the HR, OE, PM, IX, SH, and BI schemas. Specify a temporary and a default tablespace, and make sure to end the name of the log file directory with a trailing slash.

The mksample script produces several log files:

  • mkverify.log is the Sample Schema creation log file.

  • hr_main.log is the HR schema creation log file.

  • oe_oc_main.log is the OE schema creation log file.

  • pm_main.log is the PM schema creation log file.

  • pm_p_lob.log is the SQL*Loader log file for PM.PRINT_MEDIA.

  • ix_main.log is the IX schema creation log file.

  • sh_main.log is the SH schema creation log file.

  • cust.log is the SQL*Loader log file for SH.CUSTOMERS.

  • prod.log is the SQL*Loader log file for SH.PRODUCTS.

  • promo.log is the SQL*Loader log file for SH.PROMOTIONS.

  • sales.log is the SQL*Loader log file for SH.SALES.

  • sales_ext.log is the external table log file for SH.COSTS.

In most situations, there is no difference between installing a Sample Schema for the first time or reinstalling it over a previously installed version. The *_main.sql scripts drop the schema users and all their objects.

In some cases, complex interobject relationships in the OE or IX schemas prevent the DROP USER ... CASCADE operations from completing normally. To correct these rare cases, use one of the following procedures:

For the OC catalog subschema of the OE schema:

  1. Connect as the user OE.

  2. Run the oc_drop.sql. script.

  3. Connect as SYSTEM.

  4. Ensure that no user is connected as OE:

    SELECT username FROM v$session;
    
  5. Drop the user:

    DROP USER oe CASCADE;
    

For the IX schemas:

  1. Connect as SYSTEM.

  2. Ensure that no user is connected as an IX user:

    SELECT username FROM v$session WHERE username like 'IX%';
    
  3. Drop the schemas by running the dix.sql. script. You will be prompted for passwords for the individual users.

Uninstalling Sample Schemas

When you need to remove the Sample Schemas from the installation, you can run the drop_sch.sql on the SQL*Plus command line. Note that this script ships with Oracle Database.

Example 2-1 How to Uninstall Sample Schemas

@?/demo/schema/drop_sch.sql systempwd spool_file_name

The drop_sch.sql script uses two parameters: systempwd is the password for SYSTEM user, and spool_file_name is the name of the spool file that captures the log of the operation.

PK'8+w&wPK(@AOEBPS/content.opfl Oracle® Database Sample Schemas, 11g Release 2 (11.2) en-US E10831-02 Oracle Corporation Oracle Corporation Oracle® Database Sample Schemas, 11g Release 2 (11.2) 2010-08-02T15:26:29Z Describes the sample schemas included in the seed database that ships with Oracle Database 11g. These schemas are used in examples in Oracle documentation, in curriculum materials, and in demos on Oracle Technology Network. PK#PK(@A OEBPS/lof.htmo List of Figures PKD<[toPK(@AOEBPS/dcommon/prodbig.gif GIF87a!!!)))111BBBZZZsss{{ZRRcZZ!!1!91)JB9B9)kkcJJB991ssc絽Zcc!!{祽BZc!9B!c{!)c{9{Z{{cZB1)sJk{{Z{kBsZJ91)Z{!{BcsRsBc{9ZZk甽kBkR!BZ9c)JJc{!))BZks{BcR{JsBk9k)Zck!!BZ1k!ZcRBZcZJkBk1Z9c!R!c9kZRZRBZ9{99!R1{99R{1!1)c1J)1B!BJRkk{ƽ絵ތkk絵RRs{{{{JJsssBBkkk!!9ss{{ZZssccJJZZRRccRRZZ))cBBJJ99JJ!!c11991199Z11!c!!))Z!!!1BRck{)!cJBkZRZ,HP)XRÇEZ֬4jJ0 @ "8pYҴESY3CƊ@*U:lY0_0#  5tX1E: C_xޘeKTV%ȣOΏ9??:a"\fSrğjAsKJ:nOzO=}E1-I)3(QEQEQEQEQEQEQE֝Hza<["2"pO#f8M[RL(,?g93QSZ uy"lx4h`O!LŏʨXZvq& c՚]+: ǵ@+J]tQ]~[[eϸ (]6A&>ܫ~+כzmZ^(<57KsHf妬Ϧmnẁ&F!:-`b\/(tF*Bֳ ~V{WxxfCnMvF=;5_,6%S>}cQQjsOO5=)Ot [W9 /{^tyNg#ЄGsֿ1-4ooTZ?K Gc+oyڙoNuh^iSo5{\ܹ3Yos}$.nQ-~n,-zr~-|K4R"8a{]^;I<ȤL5"EԤP7_j>OoK;*U.at*K[fym3ii^#wcC'IIkIp$󿉵|CtĈpW¹l{9>⪦׺*ͯj.LfGߍԁw] |WW18>w.ӯ! VӃ :#1~ +މ=;5c__b@W@ +^]ևՃ7 n&g2I8Lw7uҭ$"&"b eZ":8)D'%{}5{; w]iu;_dLʳ4R-,2H6>½HLKܹR ~foZKZ࿷1[oZ7׫Z7R¢?«'y?A}C_iG5s_~^ J5?œ tp]X/c'r%eܺA|4ծ-Ե+ْe1M38Ǯ `|Kյ OVڅu;"d56, X5kYR<̭CiطXԮ];Oy)OcWj֩}=܅s۸QZ*<~%뺃ȶp f~Bðzb\ݳzW*y{=[ C/Ak oXCkt_s}{'y?AmCjޓ{ WRV7r. g~Q"7&͹+c<=,dJ1V߁=T)TR՜*N4 ^Bڥ%B+=@fE5ka}ędܤFH^i1k\Sgdk> ֤aOM\_\T)8靠㡮3ģR: jj,pk/K!t,=ϯZ6(((((((49 xn_kLk&f9sK`zx{{y8H 8b4>ÇНE|7v(z/]k7IxM}8!ycZRQ pKVr(RPEr?^}'ðh{x+ՀLW154cK@Ng C)rr9+c:׹b Жf*s^ fKS7^} *{zq_@8# pF~ [VPe(nw0MW=3#kȵz晨cy PpG#W:%drMh]3HH<\]ԁ|_W HHҡb}P>k {ZErxMX@8C&qskLۙOnO^sCk7ql2XCw5VG.S~H8=(s1~cV5z %v|U2QF=NoW]ո?<`~׮}=ӬfԵ,=;"~Iy7K#g{ñJ?5$y` zz@-~m7mG宝Gٱ>G&K#]؃y1$$t>wqjstX.b̐{Wej)Dxfc:8)=$y|L`xV8ߙ~E)HkwW$J0uʟk>6Sgp~;4֌W+חc"=|ř9bc5> *rg {~cj1rnI#G|8v4wĿhFb><^ pJLm[Dl1;Vx5IZ:1*p)إ1ZbAK(1ׅ|S&5{^ KG^5r>;X׻K^? s fk^8O/"J)3K]N)iL?5!ƾq:G_=X- i,vi2N3 |03Qas ! 7}kZU781M,->e;@Qz T(GK(ah(((((((Y[×j2F}o־oYYq $+]%$ v^rϭ`nax,ZEuWSܽ,g%~"MrsrY~Ҿ"Fت;8{ѰxYEfP^;WPwqbB:c?zp<7;SBfZ)dϛ; 7s^>}⍱x?Bix^#hf,*P9S{w[]GF?1Z_nG~]kk)9Sc5Ո<<6J-ϛ}xUi>ux#ţc'{ᛲq?Oo?x&mѱ'#^t)ϲbb0 F«kIVmVsv@}kҡ!ˍUTtxO̧]ORb|2yԵk܊{sPIc_?ħ:Ig)=Z~' "\M2VSSMyLsl⺿U~"C7\hz_ Rs$~? TAi<lO*>U}+'f>7_K N s8g1^CeКÿE ;{+Y\ O5|Y{/o+ LVcO;7Zx-Ek&dpzbӱ+TaB0gNy׭ 3^c T\$⫫?F33?t._Q~Nln:U/Ceb1-im WʸQM+VpafR3d׫é|Aү-q*I P7:y&]hX^Fbtpܩ?|Wu󭏤ʫxJ3ߴm"(uqA}j.+?S wV ~ [B&<^U?rϜ_OH\'.;|.%pw/ZZG'1j(#0UT` Wzw}>_*9m>󑓀F?EL3"zpubzΕ$+0܉&3zڶ+jyr1QE ( ( ( ( ( ( ( (UIdC0EZm+]Y6^![ ԯsmܶ捆?+me+ZE29)B[;я*wGxsK7;5w)}gH~.Ɣx?X\ߚ}A@tQ(:ͧ|Iq(CT?v[sKG+*רqҍck <#Ljα5݈`8cXP6T5i.K!xX*p&ќZǓϘ7 *oƽ:wlຈ:Q5yIEA/2*2jAҐe}k%K$N9R2?7ýKMV!{W9\PA+c4w` Wx=Ze\X{}yXI Ү!aOÎ{]Qx)#D@9E:*NJ}b|Z>_k7:d$z >&Vv󃏽WlR:RqJfGإd9Tm(ҝEtO}1O[xxEYt8,3v bFF )ǙrPNE8=O#V*Cc𹾾&l&cmCh<.P{ʦ&ۣY+Gxs~k5$> ӥPquŽўZt~Tl>Q.g> %k#ú:Kn'&{[yWQGqF}AЅ׮/}<;VYZa$wQg!$;_ $NKS}“_{MY|w7G!"\JtRy+贾d|o/;5jz_6fHwk<ѰJ#]kAȎ J =YNu%dxRwwbEQEQEQEQEQEQEQEQEQE'fLQZ(1F)hQ@X1KEQE-Q@ 1KE3h=iPb(((1GjZ(-ʹRPbR@ 1KE7`bڒyS0(-&)P+ ڎԴP11F)h&:LRmQ@Q@Š(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((,RmuM. I-nBvskƭON%I4/# WW@|i9Q3|뜨9>h1G`QZX ,m39V8$s@QEQEW|@ֶ>GDu39((:c:u}oc?hn#u˫nPpr=E{Q@Q@Q@Q@Q@Q@V_ x~ZԚAij]Đz s$hR#>#M4W a6b9I @u2i^& 8D3n66@=е?i++v6gp+B ( ( ( ( ( (5c[[U~ٟ78N3PQEQEQEQEQEQEQEQEQEQEQEQEQEQEw?±k< $_ K^G<+O<5`_<[oqsA*92<G4_V$Z5z$.h]F2F'ʂ~`:Oğ30YM=BҀ=xb/ üK*Ȼ`&П@N+~K8▫yQy8T1#Ӟ9񝏁|5&}x48Œ)$p׈:c&rPwi#ާ9 '35?gso%K:p2%H~FܯOxF/v~.C)keFQTyoM4k7gO8o3>^Gz>P?xgfM}hϙa:wl> coD v4zwٗftx/>%5ߍѴ6eWޱ [ ^Pqbtn7ğZx}sM[ ݘm'bV`d|AmbL{oP>t[d, %NN?f= =[cK$E<~=c%נ.щ%X r21^S[imsnۿeč881g'dQW9nn>>(TI#C+pAc௉>3[^ol|#1Ua⥷6=¾ 6_b/A~RG'h<_7.;İK R Fn= $)j] g1I=9^Rk1.!83JA!s(’I'ݟ-x#x1im0 !pf=sq2ph?^0Xx/w?R[\cW3.Tmo\aKDR!Bvf'' zW͟5ciX<}y?L'S׷~0>0=Ėv(dqGZ h(?|mwLpXn |* cx?5i^:֬iozdMNĜ0'h)6>&FEA{G*q` axwߏ:F}*QgVb(!cv>8ƞ,W|$0H Ĝd pqI:sP4$B֐X+8!@ml >kUi[ [] v()# 3{n>+{~"@\`8cZ?O ?qp"LfCV#,K!!.`+,/=:O2$F` FAkR]˽:Tv[7]\`ꣵzGQÍ'Iխ}E_n靇*H<x4W7 ciE4p=~gQǯk*9[{ PȡԌA8p |mkm@ve40g, zx;xZϓI}Zn1sWA5=S>wkR ZFGPrܑ.}x/>%5ߍѴ6eWޱ [ ^Pqbtnό^8Wh.vԕqdt*UnI92ƙ+ }跖ɵY~AJ1 h~@|Ii)6-ncwlp0cvaX?q^ k[nhQGQNt'.o jѠe9TDPa\kSqyVOg\/|Cҭ}?.?~@˼eʨ:?vꚧuBalf*[5aSW[*xwc5-tr.mЫyة ۾e3PoͬK B1'>y_TѼIcMpK:K0`0QR@yAn|kNwdPHY(cuQWNƿi]$O*ZEGvѭ4^ #J@v Uk>=7Z [V>C]\FdpN 6*.Pgv\}6|6EHtw*h1bI=&0C7M]7x^A(r.Wfk9<[h_i*pyuiO^by~h/Ce:gΑvlr pĞA  |X🈴8oti{tn: :@cSkKt|io/̈́: x؊C:t.$;$a(f$Ahz_, \7ǫ6Mx'_]izYXD g['f{+YY˙\Ƴ*$3W9;85ׄ|Ux/5 Y'~- lPziV=ljFpZ.8'qOQ]C:Ȱ^q`8$g'c:}wPr3ѧx~gގMvJ  qz _IiS[Ⱥou*ZH4m$^Z!$O80kú6v=+P ߰HڈW,FYTpqׄ|Ux/5 Y'~- lPo~|5s ]Ǫjde KIEqʌ+?g'dQWyxšNqXhvAqo%ΠDy\ 1W<7m:t-d漙r'.I' qҷ+|o6Zڝyf.(` I(>swJw?^t:{>Y' _~ҴyV?-z!?ϴOHvK`WO4 |OG=[CNA̰Rp0yaq R=B{Vy'%%s%1`@',yx^.yci]hlr"]Cmۜd~ׄ|áZI&CMB2ܖ83@x;@_ x;JUckn/ҟFrǷ^x3Oj x'þW?l}$ocnn4-K1~#hQItRlud 4o^ 伋66ho[y \8r v|y%$|dA,F :v@.~(: ZKZX+#d ˯0NH- ¹=ᗂ=q;>umӴl*PX+WY@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@OUlt=.ScM2IrIdqmZu"E38ʴlI+0@3PQ^GNjiN힇8=DžIgZk:kHꧽlQEQEW7_i<ѡI+VuV,r5n4VX(PNr((((((((((((((((i{,Y6 S hvV$pG$Jm Cvs9rsY~9e5&}$kyӓ  1pGCЯm(mRqmTBHi',y @z_t l&vܧ  hW_ρ}; 7(9$XUv9Ϥ|D;#ԼAO>#m8܄$̊z2W8szi54hk>ֹ unNY2KX74i// i;F+)`P9=v:kC5}RI]aYUƨ[Qtsj~5o'uW>V7m3W̟|n"}ZOV(A) = 9c$}W_8~5޹j& n22 A3s@O^MSңTY,@'Vgٞ rx^XHHs ɆP+aGPF@9n巸9 I]H#W%id0#:FXVa(b@HU=(<}3Ekx$'Fh,#q3y=p8o6sjv8gV Uٰ; Ep5m~=j໻K TY4MJ !+᣼@sCh ^iRiz^fsBӆ9C*[8&|G+[oegksz˟!n 3qqmotnwHS70UxBx<סO4 |WO|/ďuwxAA$fRN |_#l>ցu/o<(lAܬXN1ōÐ|3$sϫ3ly'3+q᫅1;%g6aEYYnUDLzrK,g'ş捵 [B 6X>8< .zՏß ZwzJ) IfpE>Ȇ˦G,PŖI6(KȮ3VNQݠ[7L)URf UT ?|E = ?*8((ԼgY][T/[+]'=Ű?63x![{x#5 Wu?8_ۏ}YމxGIխc>2-웶aʐG  hQ@_kBO>"ҬlYT$(j|{gsi{$n3c.}0n>3sO:_\5 o33\oFIwsЊ| X6}+HMr(X>1#ϬPϞ'<xMC!;tr9y h^#[Xn'5(햙*eNn ʕ;ɬ9 ڊ ]c^ȑCV*pppq@[qo,sA*H2AG9iO^5n4VX(PN2e S&oٳm@_?̿4ۧ֯+|2s_lٿwt4KcEͨۻڻ"po *%X_E?^5ӖZ| I 0*89R@8p״6?ĽfOGc+', df=IIeg]'y$O*Z|?xMxR5.YL~^1vb8;a9_X~ݭϛy:sO'UZkeo{53IEmۿb݌gMq~h4ֶzj}N6)S'#c +X-qq$ 0iO̾WX9zZ>kiV7N|ۤ3p8OA_<|nqinI<iZO0Xʥذ zz7RҞh|9 YҴ}ChIqhf46?ږKķvߺ(9Teb1-3wt;<˫>ihROJk>d7N<ϲ\$3gi8_CQ[ÞԵv(GF$`>Tzl(GsƟ}G\* D\=٘`@EP_?SW[רxNJg@ݷ"}ݧ~^u X`o>"_\_AɹH˵$=Š |8&;MNZÿ}MFs+ ]g6_Y[g=żGswB̤ Q@_$:Dt|CI\jvrYNndgIAS>48>'jd0C$h$($kg߇='~i-vWv23ψmb|~d"bU;BțH^٤ͧh6Wr^OooR\ɝ2I9$g_:G5CZ^q{`RP rs@GQc ]FHD133˃5:diO]$? -4:YxJFHØURYK9q1!a7"hk4C3rx'h((((((((((((((((((zqj03Y.X ,@85 ߃kc@OMմfݮ4Br%*8%IPEPEƺohuMR mmQYf1=(::΍c[w Fp}M\((((((+Y_=jՍɚu2 ЁrF4}aggiݬ AS$CkoQH8Ppbx>3>apdq2ܐz,o;8,.໵;&A"6  88 €,QEQEqW}[k|ϴ\lE6`B~4QEe^%tk56v@DrF@b2ϱ J*8'+yc P\IIXcoj--PyYRĞ09jQ@W/Fvj>"IS t9 e9:QEqzoů m tn4zg=} vQ\~#tmjaϗw #Ƹ 6IœN@(((((((((((((((h'cRՏ &B.y7;FdҫO4 M3Z̟duC q /,WF}2iVV% W#8_JgF-E;@u #8>3kQu-Ѩ!JX9#,7{ޓãh:]HY[oHAbA8gPzι{N{^ +U3q:`(8WEx6bKMftG*oW@pzj_/RXxQú' KLmFLh:^~[igK[ZyFChVV`c/ٛS5 Ir2i@287iEK\w?h->_ ]:ϗXȍ^sd 7c.Q]$O*Z<R~+<n_YcrNA<*(tozFp4Z7,`* dQ^1|3ok>2橣5m($e!Jd0eTUpMeg3nB;7=857zwp]ɝA G\;V5'i we[&oIncy.:\c9 m9&=#ƿ|9;m5FTY#%X(F3c5Q=;id~!8x^h~}DS{X˴StLccOο:sj/m['dН7)ݕl#<4V\=2;;ч  imkWZ bzUp?W~2? un mIT8u9E_ởAKxHWf9yMrGGx?q^<}IĖ~x 2; I<;xYӣ(Gȥ11*Ŗ麍WM›|⥈fvu9 ι{N{^ +U3q:`(8WEx6bKMftG*oW@pzj_/RXxQú' KLmFLh:^~[igK[ZyFChVV`c/ٛS5 Ir2i@28;/ng˂h,dF/92Uo(?k^~-qg`[o1 žBsaנQ@ÏjrZ})#|dl@tyҼ|?ߨx {"%RH_傍wpH@~yxU^^W=v8?$ !cG(-V #[͂MΠv%!\ CwqbVw%, 6<0sڔhqq-ñphU@ĭ;IaѴk.ݤh,㷍 TP3(ƾ4:Zk7zd^I <;Y^#`T׈|Y]K[%6sNvW@sWuw?±h< $_ K]syZ襮<.%zu}W^9C1DfAӊf_kW3Oj(|^9i~d$_snr@`gǤQ@>Cz[äiwaAucccYWaφ I&K-w8lG8S$ Tp` Ldp{C@gğ iPG^lZnE'C$)#lxCK#7zK11Pѷs哒sLć⟌p;]cP#J^O=ku+Cqk䫑ېLn>R|}ClCj%2A+$ A_^_Gw@'prFvS++x]M.H,)Mr'H.IvOAk/}wpmTI#b%C9;F3I|<{'n?G'zXӵ4z6p mp)!בq~W㮞?jf'ekʀ tTu< j6zuk*M sԂp@\$O*ZmOVn,t"\ɥ@*SvIg-Xmg u2yG '.@ OU~e׆SpQ#y x'veiik#G<{n4vwV}3&vơG(U(cZl1}S6r’yBNÿ GQCҾu$FK&PHñT~UC/$WQLͧۯxC񛹝ӧff,@dl*69Ӿ0xKG!Ѽ9a+Khwwc%7p3|/}{O#o׽%JU#GBk|7</Z=ogs$;Hr$)%W=ҺX|H^W]٥)6; #j2C!}B͚ku˸gTsVUrpzq̟a[k%sX<#˲D/_%%6`pxy·c~~b#.x ]Cd^? O|yCa+VXV\Ӱc' *E-tzNFѬtv񴓡bA88 e?uf-/z4z\H*x~9+}pſonϵٻ2|j>{i|aZie+V -8wqaװדxW.[?dϗ9uqϭzp>&XK;j ':yc`t%{cAxj ^KZ9[U~Qap(g:ώL18st{; 1: x$?LEv|sM4k7gO8o3;?L'Sװa_??x䱓r'R1O>(oxR`5!h*!_nB5 x{7w.ga!p"Ro:c# EPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEPEP\~GSO[!\ *_t  Exr%*_}!#U #4 & ֩3|b]L ]t b+Da&R_2lEٱZ`aC)/яmvUkS r(-iPE Vv_{z GLt\2s!F A#葡JY r|AA,hB}q|B`du }00(䡆<pb,G+oB C0p/x$…– ]7 @2HFc ) @AD \0 LHG',(A` `@SC)_" PH`}Y+_|1.K8pAKMA @?3҄$[JPA)+NH I ,@8G0/@R T,`pF8Ѓ)$^$ DDTDlA@ s;PKPK(@AOEBPS/dcommon/darbbook.cssPKPK(@A!OEBPS/dcommon/O_signature_clr.JPG"(JFIF``C    $.' ",#(7),01444'9=82<.342C  2!!22222222222222222222222222222222222222222222222222" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (?O '~MQ$Vz;OlJi8L%\]UFjޙ%ԯS;rA]5ފ<׈]j7Ouyq$z'TQuw7Ŀ KX߁M2=S'TQt?.5w'97;~pq=" ~k?`'9q6 E|yayM^Om'fkC&<5x' ?A?Zx'jß={=SßM gVC.5+Hd֪xc^)Җufz{Cީ|D Vkznq|+Xa+{50rx{|OG.OϞ~f/ xxX[2H )c+#jpUOZYX\=SG ߨC|K@;_߆'e?LT?]:?>w ڔ`D^So~xo[Ӡ3i7B:Q8 Vc-ďoi:FM292~y_*_闱YN\Fr=xZ3鳎OwW_QEzW~c]REeaSM}}Hӏ4&.E]u=gMѠ+mF`rNn$w9gMa꺢nTuhf2Xv>އ a(Û6߭?<=>z'TQuw7Ŀ KX߁M2=S'TQt?.5Kko\.8S$TOX߀Gw?Zx汴X)C7~.i6(Щ=+4{mGӭ¸-]&'t_kV*I<1)4thtIsqpQJ+> \m^[aJ5)ny:4o&QEnyAEPEEss 72,PDۢ׃K W{Wjr+wگ iM/;pd?~&?@;7E4gv8 $l'z'TQuw7Ŀ Gֱ=ɿ&G?. iR(5W*$|?w᫼gkmIbHe/_t>tg%y.l}N5[]+Mk0ĠeHdPrsst'UiC,y8`V%9ZIia|ܪvi מYG,o}+kk{YbyIeb*sAtի82zWoEK5z*o-eo;n(P u-I)4Š(HQEQEQEQEhz(X/Đ?}Bk˩ ݏrk0]4>8XzV? }6$}d^F>nU K ?Bտk_9׾x~w'ߞ  uDŽtL ؈5c-E/"|_Oo.IH쐍=i*Iw5(ںw?t5s.)+tQ2dUt5Vĺ.jZ"@IRrZƅY4ߡ_;}ų(KyQf1Aǵt?sZg+?F5_oQR&Dg߿]6FuRD u>ڿxl7?IT8'shj^=.=J1rj1Wl$얲cPx;E,p$֟ˏkw qg"45(ǛkV/=+ũ)bYl~K#˝J_כ5&\F'I#8/|wʾ_Xj Q:os^T1.M_|TO.;?_  jF?g N 8nA2F%i =qW,G=5OU u8]Rq?wr'˻S+۾.ܼ 87Q^elo/T*?L|ۚ<%<,/v_OKs B5f/29n0=zqQq(ª=VX@*J(э(f5qJN_EVǞQEOuoѕOuoa5}gO?:߂8Wא|cڽ~]N&O( (<]>͠@VQ=^~U ̴m&\խ5i:}|}r~9՝f}_>'vVֲ$~^f30^in{\_.O F8to}?${φ|#x^#^n~w=~k~?'KRtO.㌡h![3Zu*ٷճ(ԟ]z_/W1(ԟ]v~g|Yq<ז0 ; b8֮s,w9\?uEyStKaª@\,)) (!EPEPEPEPEPzѧts{v>C/"N6`d*J2gGӧWqBq_1ZuΓ\X]r?=Ey88Mp&pKtO-"wR2 K^-Z< \c>V0^@O7x2WFjs<׻kZ(<Т(OFw/6$1[:ޯԯ#q~4|,LVPem=@=YLUxӃV}AUbcUB.Ds5*kٸAeG>PJxt͝ b88?*$~@ׯD VkraiJs}Q.20x&mXξ,Z]“A-J#`+-E/"<]\a'tZGy.(|lދ~gMK OZdxDŽU9T6ϯ^<Ϡt5CZ]].t۫S=s`ڳ%8iVK:nqe+#<.T6U>zWoy3^I {F?J~=G}k)K$$;$de8*G Uӟ4Ocºw}|]4=ݣ\x$ʠms?q^ipw\"ȿPs^Z Q_0GڼU.t}ROM[G#]8wٞ ӫ87}Cgw vHȩBM55vof =A_٭`Ygx[6 P,5}>蚊(0(+?>+?> k|TuXq6_ +szk :u_ Z߶Ak_U}Jc2u/1[_»ݸG41-bሬ۴}}Eȹפ_c?5gi @cL\L<68hF_Ih>X4K7UТ sMj =J7CKo>Օ5s:߀t ~ηaٿ?|gdL8+gG%o?x`دOqȱwc¨&TW_V_aI=dpG!wu۞սZ1yL50$(l3(:~'ַo A}a3N*[0ǭ HKQV}G@֜$ 9of$ArNqUOgË05#m?D)^_h//5_/<?4}Jį+GkpG4"$ r| >S4Ђ"S 1%R:ȝ 8;PKPz PK(@AOEBPS/dcommon/feedback.gif7GIF89a'%(hp|fdx?AN5:dfeDGHɾTdQc`g*6DC\?ؘ||{;=E6JUՄfeA= >@,4`H.|`a (Q 9:&[|ځ,4p Y&BDb,!2@, $wPA'ܠǃ@CO~/d.`I @8ArHx9H75j L 3B/` P#qD*s 3A:3,H70P,R@ p!(F oԥ D;"0 ,6QBRɄHhI@@VDLCk8@NBBL2&pClA?DAk%$`I2 #Q+l7 "=&dL&PRSLIP)PɼirqМ'N8[_}w;PK-PK(@AOEBPS/dcommon/booklist.gifGIF89a1޵֥΄kZ{Jk1Rs!BZ)B),@I9Z͓Ca % Dz8Ȁ0FZЌ0P !x8!eL8aWȠFD(~@p+rMS|ӛR$ v "Z:]ZJJEc{*=AP  BiA ']j4$*   & 9q sMiO?jQ = , YFg4.778c&$c%9;PKː5PK(@AOEBPS/dcommon/cpyr.htm1 Oracle Legal Notices

Oracle Legal Notices

Copyright Notice

Copyright © 1994-2012, Oracle and/or its affiliates. All rights reserved.

Trademark Notice

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

License Restrictions Warranty/Consequential Damages Disclaimer

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

Warranty Disclaimer

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

Restricted Rights Notice

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

Hazardous Applications Notice

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Third-Party Content, Products, and Services Disclaimer

This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

Alpha and Beta Draft Documentation Notice

If this document is in prerelease status:

This documentation is in prerelease status and is intended for demonstration and preliminary use only. It may not be specific to the hardware on which you are using the software. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to this documentation and will not be responsible for any loss, costs, or damages incurred due to the use of this documentation.

Oracle Logo

PKN61PK(@AOEBPS/dcommon/masterix.gif.GIF89a1ޜΌscJk1Rs!Bc1J),@IS@0"1 Ѿb$b08PbL,acr B@(fDn Jx11+\%1 p { display: none; } /* Class Selectors */ .ProductTitle { font-family: sans-serif; } .BookTitle { font-family: sans-serif; } .VersionNumber { font-family: sans-serif; } .PrintDate { font-family: sans-serif; font-size: small; } .PartNumber { font-family: sans-serif; font-size: small; } PKeӺ1,PK(@AOEBPS/dcommon/larrow.gif#GIF87a絵ƌֵƽ{{ss֜ƔZZ{{{{ZZssZZccJJJJRRBBJJJJ991111))!!{,@pH,Ȥrl:ШtpHc`  өb[.64ꑈ53=Z]'yuLG*)g^!8C?-6(29K"Ĩ0Яl;U+K9^u2,@@ (\Ȱ Ë $P`lj 8x I$4H *(@͉0dа8tA  DсSP v"TUH PhP"Y1bxDǕ̧_=$I /& .)+ 60D)bB~=0#'& *D+l1MG CL1&+D`.1qVG ( "D2QL,p.;u. |r$p+5qBNl<TzB"\9e0u )@D,¹ 2@C~KU 'L6a9 /;<`P!D#Tal6XTYhn[p]݅ 7}B a&AƮe{EɲƮiEp#G}D#xTIzGFǂEc^q}) Y# (tۮNeGL*@/%UB:&k0{ &SdDnBQ^("@q #` @1B4i@ aNȅ@[\B >e007V[N(vpyFe Gb/&|aHZj@""~ӎ)t ? $ EQ.սJ$C,l]A `8A o B C?8cyA @Nz|`:`~7-G|yQ AqA6OzPbZ`>~#8=./edGA2nrBYR@ W h'j4p'!k 00 MT RNF6̙ m` (7%ꑀ;PKl-OJPK(@AOEBPS/dcommon/index.gifGIF89a1޵ΥΥ{sc{BZs,@IM" AD B0 3.R~[D"0, ]ШpRNC  /& H&[%7TM/`vS+-+ q D go@" 4o'Uxcxcc&k/ qp zUm(UHDDJBGMԃ;PK(PK(@AOEBPS/dcommon/bookbig.gif +GIF89a$!!!)))111999BBBJJJRRRZZZccckkksss{{{skkB991)))!!B11))1!JB9B9!!cZ9ƭƽssk{ZZRccZRRJJJBBB9c!!ν)1)k{s絽ƌkssֽZccJRRBJJ{9BB)11)99!!))11!!k!JZ!)RcJccBcs)1c)JZ!BR!)BZ)99J!Rk9!c11B)Z{)9Bkc1kB9BZ!Z{9Rs)Jkksk9kB1s1Jk9Rƥc{k9s)Z{1k91)s1Rk)Jc1J!))BZ!1k{csc{)19B!)Bcsc{ksc{kZs!RkJkJkքc{9Zks{ck9R)Bks9R9R1J!)Z1B!)c)9)99BR19kksBBJcc{ccBBZ))9kk!!199c11ZBB{9!!R!!Z!!c))!!kR!!s!!BcksRZ1c9B)R91c1)Z!R9B9k1)RcZ{)!1B9JB9B)!)J9B!& Imported from GIF image: bookbig.gif,$!!!)))111999BBBJJJRRRZZZccckkksss{{{skkB991)))!!B11))1!JB9B9!!cZ9ƭƽssk{ZZRccZRRJJJBBB9c!!ν)1)k{s絽ƌkssֽZccJRRBJJ{9BB)11)99!!))11!!k!JZ!)RcJccBcs)1c)JZ!BR!)BZ)99J!Rk9!c11B)Z{)9Bkc1kB9BZ!Z{9Rs)Jkksk9kB1s1Jk9Rƥc{k9s)Z{1k91)s1Rk)Jc1J!))BZ!1k{csc{)19B!)Bcsc{ksc{kZs!RkJkJkքc{9Zks{ck9R)Bks9R9R1J!)Z1B!)c)9)99BR19kksBBJcc{ccBBZ))9kk!!199c11ZBB{9!!R!!Z!!c))!!kR!!s!!BcksRZ1c9B)R91c1)Z!R9B9k1)RcZ{)!1B9JB9B)!)J9BH`\Ȑ:pظа"A6DBH,V@Dڹ'G"v Æ ܥ;n;!;>xAܽ[G.\rQC wr}BŊQ A9ᾑ#5Y0VȒj0l-GqF>ZpM rb ;=.ސW-WѻWo ha!}~ْ ; t 53 :\ 4PcD,0 4*_l0K3-`l.j!c Aa|2L4/1C`@@md;(H*80L0L(h*҇҆o#N84pC (xO@ A)J6rVlF r  fry†$r_pl5xhA+@A=F rGU a 1х4s&H Bdzt x#H%Rr (Ѐ7P`#Rщ'x" #0`@~i `HA'Tk?3!$`-A@1l"P LhʖRG&8A`0DcBH sq@AXB4@&yQhPAppxCQ(rBW00@DP1E?@lP1%T` 0 WB~nQ@;PKGC PK(@AOEBPS/dcommon/rarrow.gif/GIF87a絵ƌֵƽ{{ss֜ƔZZ{{{{ZZssZZccJJJJRRBBJJJJ991111))!!{,@pH,Ȥrl:ШLlԸ NCqWEd)#34vwwpN|0yhX!'+-[F 'n5 H $/14w3% C .90" qF 7&E "D mnB|,c96) I @0BW{ᢦdN p!5"D`0 T 0-]ʜ$;PKJV^PK(@AOEBPS/dcommon/mix.gifkGIF89aZZZBBBJJJkkk999sss!!!111cccֽ{{{RRR)))猌ƭ{s{sks!,@@pH,B$ 8 t:<8 *'ntPP DQ@rIBJLNPTVEMOQUWfj^!  hhG H  kCúk_a Ǥ^ h`B BeH mm  #F` I lpǎ,p B J\Y!T\(dǏ!Gdˆ R53ټ R;iʲ)G=@-xn.4Y BuU(*BL0PX v`[D! | >!/;xP` (Jj"M6 ;PK枰pkPK(@AOEBPS/dcommon/doccd_epub.jsM /* Copyright 2006, 2012, Oracle and/or its affiliates. All rights reserved. Author: Robert Crews Version: 2012.3.17 */ function addLoadEvent(func) { var oldOnload = window.onload; if (typeof(window.onload) != "function") window.onload = func; else window.onload = function() { oldOnload(); func(); } } function compactLists() { var lists = []; var ul = document.getElementsByTagName("ul"); for (var i = 0; i < ul.length; i++) lists.push(ul[i]); var ol = document.getElementsByTagName("ol"); for (var i = 0; i < ol.length; i++) lists.push(ol[i]); for (var i = 0; i < lists.length; i++) { var collapsible = true, c = []; var li = lists[i].getElementsByTagName("li"); for (var j = 0; j < li.length; j++) { var p = li[j].getElementsByTagName("p"); if (p.length > 1) collapsible = false; for (var k = 0; k < p.length; k++) { if ( getTextContent(p[k]).split(" ").length > 12 ) collapsible = false; c.push(p[k]); } } if (collapsible) { for (var j = 0; j < c.length; j++) { c[j].style.margin = "0"; } } } function getTextContent(e) { if (e.textContent) return e.textContent; if (e.innerText) return e.innerText; } } addLoadEvent(compactLists); function processIndex() { try { if (!/\/index.htm(?:|#.*)$/.test(window.location.href)) return false; } catch(e) {} var shortcut = []; lastPrefix = ""; var dd = document.getElementsByTagName("dd"); for (var i = 0; i < dd.length; i++) { if (dd[i].className != 'l1ix') continue; var prefix = getTextContent(dd[i]).substring(0, 2).toUpperCase(); if (!prefix.match(/^([A-Z0-9]{2})/)) continue; if (prefix == lastPrefix) continue; dd[i].id = prefix; var s = document.createElement("a"); s.href = "#" + prefix; s.appendChild(document.createTextNode(prefix)); shortcut.push(s); lastPrefix = prefix; } var h2 = document.getElementsByTagName("h2"); for (var i = 0; i < h2.length; i++) { var nav = document.createElement("div"); nav.style.position = "relative"; nav.style.top = "-1.5ex"; nav.style.left = "1.5em"; nav.style.width = "90%"; while (shortcut[0] && shortcut[0].toString().charAt(shortcut[0].toString().length - 2) == getTextContent(h2[i])) { nav.appendChild(shortcut.shift()); nav.appendChild(document.createTextNode("\u00A0 ")); } h2[i].parentNode.insertBefore(nav, h2[i].nextSibling); } function getTextContent(e) { if (e.textContent) return e.textContent; if (e.innerText) return e.innerText; } } addLoadEvent(processIndex); PKo"nR M PK(@AOEBPS/dcommon/toc.gifGIF89a1ΥΥ{c{Z{JkJk1Rk,@IK% 0| eJB,K-1i']Bt9dz0&pZ1o'q(؟dQ=3S SZC8db f&3v2@VPsuk2Gsiw`"IzE%< C !.hC IQ 3o?39T ҍ;PKv I PK(@AOEBPS/dcommon/topnav.gifGIF89a1ֽ筽ޭƔkZZk{Bc{,@ ) l)-'KR$&84 SI) XF P8te NRtHPp;Q%Q@'#rR4P fSQ o0MX[) v + `i9gda/&L9i*1$#"%+ ( E' n7Ȇ(,҅(L@(Q$\x 8=6 'נ9tJ&"[Epljt p#ѣHb :f F`A =l|;&9lDP2ncH R `qtp!dȐYH›+?$4mBA9 i@@ ]@ꃤFxAD*^Ŵ#,(ε  $H}F.xf,BD Z;PK1FAPK(@AOEBPS/dcommon/bp_layout.css# @charset "utf-8"; /* bp_layout.css Copyright 2007, Oracle and/or its affiliates. All rights reserved. */ body { margin: 0ex; padding: 0ex; } h1 { display: none; } #FOOTER { border-top: #0d4988 solid 10px; background-color: inherit; color: #e4edf3; clear: both; } #FOOTER p { font-size: 80%; margin-top: 0em; margin-left: 1em; } #FOOTER a { background-color: inherit; color: gray; } #LEFTCOLUMN { float: left; width: 50%; } #RIGHTCOLUMN { float: right; width: 50%; clear: right; /* IE hack */ } #LEFTCOLUMN div.portlet { margin-left: 2ex; margin-right: 1ex; } #RIGHTCOLUMN div.portlet { margin-left: 1ex; margin-right: 2ex; } div.portlet { margin: 2ex 1ex; padding-left: 0.5em; padding-right: 0.5em; border: 1px #bcc solid; background-color: #f6f6ff; color: black; } div.portlet h2 { margin-top: 0.5ex; margin-bottom: 0ex; font-size: 110%; } div.portlet p { margin-top: 0ex; } div.portlet ul { list-style-type: none; padding-left: 0em; margin-left: 0em; /* IE Hack */ } div.portlet li { text-align: right; } div.portlet li cite { font-style: normal; float: left; } div.portlet li a { margin: 0px 0.2ex; padding: 0px 0.2ex; font-size: 95%; } #NAME { margin: 0em; padding: 0em; position: relative; top: 0.6ex; left: 10px; width: 80%; } #PRODUCT { font-size: 180%; } #LIBRARY { color: #0b3d73; background: inherit; font-size: 180%; font-family: serif; } #RELEASE { position: absolute; top: 28px; font-size: 80%; font-weight: bold; } #TOOLS { list-style-type: none; position: absolute; top: 1ex; right: 2em; margin: 0em; padding: 0em; background: inherit; color: black; } #TOOLS a { background: inherit; color: black; } #NAV { float: left; width: 96%; margin: 3ex 0em 0ex 0em; padding: 2ex 0em 0ex 4%; /* Avoiding horizontal scroll bars. */ list-style-type: none; background: transparent url(../gifs/nav_bg.gif) repeat-x bottom; } #NAV li { float: left; margin: 0ex 0.1em 0ex 0em; padding: 0ex 0em 0ex 0em; } #NAV li a { display: block; margin: 0em; padding: 3px 0.7em; border-top: 1px solid gray; border-right: 1px solid gray; border-bottom: none; border-left: 1px solid gray; background-color: #a6b3c8; color: #333; } #SUBNAV { float: right; width: 96%; margin: 0ex 0em 0ex 0em; padding: 0.1ex 4% 0.2ex 0em; /* Avoiding horizontal scroll bars. */ list-style-type: none; background-color: #0d4988; color: #e4edf3; } #SUBNAV li { float: right; } #SUBNAV li a { display: block; margin: 0em; padding: 0ex 0.5em; background-color: inherit; color: #e4edf3; } #SIMPLESEARCH { position: absolute; top: 5ex; right: 1em; } #CONTENT { clear: both; } #NAV a:hover, #PORTAL_1 #OVERVIEW a, #PORTAL_2 #OVERVIEW a, #PORTAL_3 #OVERVIEW a, #PORTAL_4 #ADMINISTRATION a, #PORTAL_5 #DEVELOPMENT a, #PORTAL_6 #DEVELOPMENT a, #PORTAL_7 #DEVELOPMENT a, #PORTAL_11 #INSTALLATION a, #PORTAL_15 #ADMINISTRATION a, #PORTAL_16 #ADMINISTRATION a { background-color: #0d4988; color: #e4edf3; padding-bottom: 4px; border-color: gray; } #SUBNAV a:hover, #PORTAL_2 #SEARCH a, #PORTAL_3 #BOOKS a, #PORTAL_6 #WAREHOUSING a, #PORTAL_7 #UNSTRUCTURED a, #PORTAL_15 #INTEGRATION a, #PORTAL_16 #GRID a { position: relative; top: 2px; background-color: white; color: #0a4e89; } PK3( # PK(@AOEBPS/dcommon/bookicon.gif:GIF87a!!!)))111999BBBJJJRRRZZZccckkksss{{{ޭ{{ZRRcZZRJJJBB)!!skRB9{sν{skskcZRJ1)!֭ƽ{ZZRccZJJBBB999111)JJ9BB1ZZB!!ﭵBJJ9BB!!))Jk{)1!)BRZJ{BsR!RRJsJ!J{s!JsBkks{RsB{J{c1RBs1ZB{9BJ9JZ!1BJRRs!9R!!9Z9!1)J19JJRk19R1Z)!1B9R1RB!)J!J1R)J119!9J91!9BkksBBJ119BBR!))9!!!JB1JJ!)19BJRZckތ1)1J9B,H*\hp >"p`ƒFF "a"E|ժOC&xCRz OBtX>XE*O>tdqAJ +,WxP!CYpQ HQzDHP)T njJM2ꔀJ2T0d#+I:<жk 'ꤱF AB @@nh Wz' H|-7f\A#yNR5 /PM09u UjćT|q~Yq@&0YZAPa`EzI /$AD Al!AAal 2H@$ PVAB&c*ؠ p @% p-`@b`uBa l&`3Ap8槖X~ vX$Eh`.JhAepA\"Bl, :Hk;PKx[?:PK(@AOEBPS/dcommon/conticon.gif^GIF87a!!!)))111999BBBJJJRRRZZZccckkksss{{{ZRR޽{{ssskkkcccZ991ccRZZBBJJZck)19ZcsBJZ19J!k{k)Z1RZs1!B)!J91{k{)J!B!B911)k{cs!1s!9)s!9!B!k)k1c!)Z!R{9BJcckZZcBBJ99B119{{!!)BBRBBZ!))999R99Z!!999c1!9!)19B1)!B9R,  oua\h2SYPa aowwxYi 9SwyyxxyYSd $'^qYȵYvh ч,/?g{н.J5fe{ڶyY#%/}‚e,Z|pAܠ `KYx,ĉ&@iX9|`p ]lR1khٜ'E 6ÅB0J;t X b RP(*MÄ!2cLhPC <0Ⴁ  $4!B 6lHC%<1e H 4p" L`P!/,m*1F`#D0D^!AO@..(``_؅QWK>_*OY0J@pw'tVh;PKp*c^PK(@AOEBPS/dcommon/blafdoc.cssL@charset "utf-8"; /* Copyright 2002, 2011, Oracle and/or its affiliates. All rights reserved. Author: Robert Crews Version: 2011.10.7 */ body { font-family: Tahoma, sans-serif; /* line-height: 125%; */ color: black; background-color: white; font-size: small; } * html body { /* http://www.info.com.ph/~etan/w3pantheon/style/modifiedsbmh.html */ font-size: x-small; /* for IE5.x/win */ f\ont-size: small; /* for other IE versions */ } h1 { font-size: 165%; font-weight: bold; border-bottom: 1px solid #ddd; width: 100%; } h2 { font-size: 152%; font-weight: bold; } h3 { font-size: 139%; font-weight: bold; } h4 { font-size: 126%; font-weight: bold; } h5 { font-size: 113%; font-weight: bold; display: inline; } h6 { font-size: 100%; font-weight: bold; font-style: italic; display: inline; } a:link { color: #039; background: inherit; } a:visited { color: #72007C; background: inherit; } a:hover { text-decoration: underline; } a img, img[usemap] { border-style: none; } code, pre, samp, tt { font-family: monospace; font-size: 110%; } caption { text-align: center; font-weight: bold; width: auto; } dt { font-weight: bold; } table { font-size: small; /* for ICEBrowser */ } td { vertical-align: top; } th { font-weight: bold; text-align: left; vertical-align: bottom; } ol ol { list-style-type: lower-alpha; } ol ol ol { list-style-type: lower-roman; } td p:first-child, td pre:first-child { margin-top: 0px; margin-bottom: 0px; } table.table-border { border-collapse: collapse; border-top: 1px solid #ccc; border-left: 1px solid #ccc; } table.table-border th { padding: 0.5ex 0.25em; color: black; background-color: #f7f7ea; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; } table.table-border td { padding: 0.5ex 0.25em; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; } span.gui-object, span.gui-object-action { font-weight: bold; } span.gui-object-title { } p.horizontal-rule { width: 100%; border: solid #cc9; border-width: 0px 0px 1px 0px; margin-bottom: 4ex; } div.zz-skip-header { display: none; } td.zz-nav-header-cell { text-align: left; font-size: 95%; width: 99%; color: black; background: inherit; font-weight: normal; vertical-align: top; margin-top: 0ex; padding-top: 0ex; } a.zz-nav-header-link { font-size: 95%; } td.zz-nav-button-cell { white-space: nowrap; text-align: center; width: 1%; vertical-align: top; padding-left: 4px; padding-right: 4px; margin-top: 0ex; padding-top: 0ex; } a.zz-nav-button-link { font-size: 90%; } div.zz-nav-footer-menu { width: 100%; text-align: center; margin-top: 2ex; margin-bottom: 4ex; } p.zz-legal-notice, a.zz-legal-notice-link { font-size: 85%; /* display: none; */ /* Uncomment to hide legal notice */ } /*************************************/ /* Begin DARB Formats */ /*************************************/ .bold, .codeinlinebold, .syntaxinlinebold, .term, .glossterm, .seghead, .glossaryterm, .keyword, .msg, .msgexplankw, .msgactionkw, .notep1, .xreftitlebold { font-weight: bold; } .italic, .codeinlineitalic, .syntaxinlineitalic, .variable, .xreftitleitalic { font-style: italic; } .bolditalic, .codeinlineboldital, .syntaxinlineboldital, .titleinfigure, .titleinexample, .titleintable, .titleinequation, .xreftitleboldital { font-weight: bold; font-style: italic; } .itemizedlisttitle, .orderedlisttitle, .segmentedlisttitle, .variablelisttitle { font-weight: bold; } .bridgehead, .titleinrefsubsect3 { font-weight: bold; } .titleinrefsubsect { font-size: 126%; font-weight: bold; } .titleinrefsubsect2 { font-size: 113%; font-weight: bold; } .subhead1 { display: block; font-size: 139%; font-weight: bold; } .subhead2 { display: block; font-weight: bold; } .subhead3 { font-weight: bold; } .underline { text-decoration: underline; } .superscript { vertical-align: super; } .subscript { vertical-align: sub; } .listofeft { border: none; } .betadraft, .alphabetanotice, .revenuerecognitionnotice { color: #e00; background: inherit; } .betadraftsubtitle { text-align: center; font-weight: bold; color: #e00; background: inherit; } .comment { color: #080; background: inherit; font-weight: bold; } .copyrightlogo { text-align: center; font-size: 85%; } .tocsubheader { list-style-type: none; } table.icons td { padding-left: 6px; padding-right: 6px; } .l1ix dd, dd dl.l2ix, dd dl.l3ix { margin-top: 0ex; margin-bottom: 0ex; } div.infoboxnote, div.infoboxnotewarn, div.infoboxnotealso { margin-top: 4ex; margin-right: 10%; margin-left: 10%; margin-bottom: 4ex; padding: 0.25em; border-top: 1pt solid gray; border-bottom: 1pt solid gray; } p.notep1 { margin-top: 0px; margin-bottom: 0px; } .tahiti-highlight-example { background: #ff9; text-decoration: inherit; } .tahiti-highlight-search { background: #9cf; text-decoration: inherit; } .tahiti-sidebar-heading { font-size: 110%; margin-bottom: 0px; padding-bottom: 0px; } /*************************************/ /* End DARB Formats */ /*************************************/ @media all { /* * * { line-height: 120%; } */ dd { margin-bottom: 2ex; } dl:first-child { margin-top: 2ex; } } @media print { body { font-size: 11pt; padding: 0px !important; } a:link, a:visited { color: black; background: inherit; } code, pre, samp, tt { font-size: 10pt; } #nav, #search_this_book, #comment_form, #comment_announcement, #flipNav, .noprint { display: none !important; } body#left-nav-present { overflow: visible !important; } } PKʍPK(@AOEBPS/dcommon/rightnav.gif&GIF89a1ֽ筽ޭƔkZZk{Bc{,@ ) l)- $CҠҀ ! D1 #:aS( c4B0 AC8 ְ9!%MLj Z * ctypJBa H t>#Sb(clhUԂ̗4DztSԙ9ZQҀEPEPEPEPEPEPEPM=iԍP Gii c*yF 1׆@\&o!QY00_rlgV;)DGhCq7~..p&1c:u֫{fI>fJL$}BBP?JRWc<^j+χ5b[hֿ- 5_j?POkeQ^hֿ1L^ H ?Qi?z?+_xɔŪ\썽O]χ>)xxV/s)e6MI7*ߊޛv֗2J,;~E4yi3[nI`Ѱe9@zXF*W +]7QJ$$=&`a۾?]N T䏟'X)Ɣkf:j |>NBWzYx0t!* _KkoTZ?K Gc+UyڹgNuh^iSo5{\ܹ3Yos}.>if FqR5\/TӮ#]HS0DKu{($"2xִ{SBJ8=}Y=.|Tsц2UЫ%.InaegKo z ݎ3ֹxxwM&2S%';+I',kW&-"_¿_ Vq^ܫ6pfT2RV A^6RKetto^[{w\jPZ@ޢN4/XN#\42j\(z'j =~-I#:q[Eh|X:sp* bifp$TspZ-}NM*B-bb&*xUr#*$M|QWY ~p~- fTED6O.#$m+t$˙H"Gk=t9r娮Y? CzE[/*-{c*[w~o_?%ƔxZ:/5𨴟q}/]22p qD\H"K]ZMKR&\C3zĽ[PJm]AS)Ia^km M@dК)fT[ijW*hnu Ͳiw/bkExG£@f?Zu.s0(<`0ֹoxOaDx\zT-^ѧʧ_1+CP/p[w 9~U^[U<[tĽwPv[yzD1W='u$Oeak[^ |Gk2xv#2?¹TkSݕ| rݞ[Vi _Kz*{\c(Ck_܏|?u jVڔ6f t?3nmZ6f%QAjJf9Rq _j7Z-y.pG$Xb]0')[_k;$̭?&"0FOew7 z-cIX岛;$u=\an$ zmrILu uٞ% _1xcUW%dtÀx885Y^gn;}ӭ)場QEQ@Q@Q@Q@Q@Q@!4xPm3w*]b`F_931˜[ן+(> E ly;<;MF-qst+}DH @YKlLmؤciN<|]IU)Lw(8t9FS(=>og<\Z~u_+X1ylsj'eՃ*U3`C!N9Q_WܱhKc93^ua>H ƕGk=8~e#_?{ǀe-[2ٔ7;=&K挑5zsLdx(e8#{1wS+ΝVkXq9>&yஏh$zq^0~/j@:/«Vnce$$uoPp}MC{$-akH@ɫ1O !8R9s5ԦYmϧ'OUṡ5T,!Ԛ+s#1Veo=[)g>#< s)ƽُA^䠮ωFUj(ǩ|N3Jڷ睁ϱuږZYGOTsI<&drav?A^_f׻B$,O__ԿC`it{6>G׈C~&$y؎v1q9Sc1fH[ѽ>,gG'0'@Vw,BO [#>ﱺg5ΒFVD%Yr:O5 Tu+O멃]ی38Ze}R&ѝ_xzc1DXgس;<,_,{ƽY'AS#oF.M#~cBuEx7G+Y)(5q+GCV;qF+CLQ)qEC&6z𿊘z}?&w=+)??&\g{;V??׻xGœdٿ׼-Nc')3K]N)iLTӿCdb7Q^a N sd>Fz[0S^s'Zi 77D}kWus ab~~H(>.fif9,~|Jk;YN3H8Y(t6Q݉k͇_÷Z+2߄&[ +Tr^藺97~c܎=[f1RrBǓ^kEMhxYVm<[џ6| kqbѱ| YA{G8p?\UM7Z66 g1U1igU69 u5Pƪ:VVZC=[@ҹ¨$kSmɳО\vFz~i3^a Osŧυ9Q}_3 όO{/wgoet39 vO2ea;Ύ7$U#?k+Ek&dpzbӱ+TaB0gN{[N7Gי}U7&@?>Fz~E!a@s ?'67XxO*!?qi]֏TQN@tI+\^s8l0)2k!!iW8F$(yOּT.k,/#1:}8uT˾+5=O/`IW G֯b.-<= HOm;~so~hW5+kS8s.zwE| ?4ӿw/K N 9?j(#0UT` Wzw}:_*9m>󑓀F?ELzv=8q:=WgJ`nDr Zе<ֹ](Q@Q@Q@Q@Q@Q@Q@Q@ 'IdC0EYJVcMty_~u+Sw-aO n<[YJgL#6i g5ЖDZ14cʝ!!\/M}/_AYR__>oC? _?7_G#RERW쏞KB}JxGSkǕA pƱơP m]hwB7U$Zq M95"3q1ioATߚ{g.t uu2k=;h#YB= fgS :TdLԃ!44mFK{Hrd^7oz|BVr<{)6AXգV»|>*/hS܏z͆OM=Εq (s|s׊LKQI :9NJ)P+!ʣoAF>+=@I}"x/}۠1aנc¹4emC:>p_xWKX` >R3_S½èųp3޺u3N e یbmͺ<_ mnݮ1Op?Gm)Qb%N585'%Ahs\6yw!"&Ɨ._wk)}GP;Z!#\"< *oƾ\)}N>"լ/~]Lg}pBG X?<zZ#x69S=6) jzx=y9O&>+e!!? ?s~k5Gʏ)?*ce7Ox~k5􇔾Q/e7/Ԑ#3OgNC0] ;_FiRl>Q.g>!%k#ú:Kn'&}?U@\pџPtp)v<{_i}Oվֲ3XIYIx~b<D?(=_JXH=bbi=Oh?_ C_O)}oW쏜? %Ƶ;-RYFi`wۭ{ϖZMtQ$"c_+ԃx1*0b;ԕ݋ESQEQEQEQEQEQEQEQEQEQZ(1F)h1K@XLRE&9P (bf{RӨ&)PEPEPbԴPGKZ(iإbn(:A%S0(-&)P+ ڎԴP11F)h&:LRmQ@Q@Š(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((PKje88PK(@AOEBPS/dcommon/help.gif!GIF89a1εֵ֜֜{kZsBc{,@ )sƠTQ$8(4ʔ%ŌCK$A HP`$h8ŒSd+ɡ\ H@%' 6M HO3SJM /:Zi[7 \( R9r ERI%  N=aq   qƦs *q-n/Sqj D XZ;PKއ{&!PK(@A OEBPS/toc.htmf Table of Contents PK/R4tPK(@AOEBPS/rationale.htm&, Rationale

3 Rationale

The Oracle Database sample schemas are based on a fictitious company that sells goods through various channels. This chapter describes the fictitious company and contains the following sections:

Overall Description

The sample company portrayed by the Oracle Database Sample Schemas operates worldwide to fill orders for several products. The company has several divisions:

  • The Human Resources division tracks information about the employees and the facilities.

  • The Order Entry division tracks product inventories and sales of company's products through various channels.

  • The Product Media division maintains descriptions and detailed information about each product sold by the company.

  • The Information Exchange division manages shipping through B2B applications.

  • The Sales division tracks business statistics to facilitate business decisions.

Each of these divisions is represented by a schema.

HR

In the Human Resource (HR) records, each employee has an identification number, e-mail address, job identification code, salary, and manager. Some employees earn commissions in addition to their salary.

The company also tracks information about jobs within the organization. Each job has an identification code, job title, and a minimum and maximum salary range for the job. Some employees have been with the company for a long time and have held different positions within the company. When an employee resigns, the duration the employee was working, the job identification number, and the department are recorded.

The sample company is regionally diverse, so it tracks the locations of its warehouses and departments. Each employee is assigned to a department, and each department is identified either by a unique department number or a short name. Each department is associated with one location, and each location has a full address that includes the street name, postal code, city, state or province, and the country code.

In places where the departments and warehouses are located, the company records details such as the country name, currency symbol, currency name, and the region where the country is located geographically.

OE

The company sells several products, such as computer hardware and software, music, clothing, and tools. The company maintains information about these products, such as product identification numbers, the category into which the product falls, order entry (OE), the weight group (for shipping purposes), the warranty period if applicable, the supplier, the availability status of the product, a list price, a minimum price at which a product will be sold, and a URL address for manufacturer information. Inventory information is also recorded for all products, including the warehouse where the product is available and the quantity on hand. Because products are sold worldwide, the company maintains the names of the products and their descriptions in several languages.

The company maintains warehouses in several locations to fulfill customer needs. Each warehouse has a warehouse identification number, name, facility description, and location identification number.

Customer information is also tracked. Each customer has an identification number. Customer records include customer name, street name, city or province, country, phone numbers (up to five phone numbers for each customer), and postal code. Some customers place orders through the Internet, so e-mail addresses are also recorded. Because of language differences among customers, the company records the native language and territory of each customer.

The company places a credit limit on its customers, to limit the amount of products they can purchase at one time. Some customers have an account manager, and this information is also recorded.

When a customer places an order, the company tracks the date of the order, how the order was placed, the current status of the order, shipping mode, total amount of the order, and the sales representative who helped place the order. The sales representative may or may not be the same person as the account manager for a customer. If an order is placed over the Internet, no sales representative is recorded. In addition to order information, the company also tracks the number of items ordered, the unit price, and the products ordered.

The OE schema also contains XML purchase order documents. The XML documents are stored in the Oracle XML DB Repository after validation against the registered XML schema purchaseorder.xsd. You can access these documents in various ways, such as by querying the PURCHASEORDER object-relational table by using SQL, by querying public views RESOURCE_VIEW and PATH_VIEW, and by querying the repository using XPath expressions.

The purchase order XML documents are located in the Oracle XML DB Repository folder $ORACLE_HOME/rdbms/demo/order_entry/2002/month, where month is a three-letter month abbreviation (for example, Jan, Feb, Mar, and so on).

OC Description

The Online Catalog (OC) subschema of the OE schema addresses an online catalog merchandising scenario. The same customers and products are used in OC as in the OE schema proper, but the OC subschema organizes the products into a hierarchy of parent categories and subcategories. This hierarchy corresponds to the arrangement on an e-commerce portal site, where users navigate to specific products by drilling down through increasingly specialized categories of products.

PM

The company stores multimedia and print information about its products in a database. The Product Media (PM) schema is used to store such information. Examples of such information are:

  • Promotional audio and video clips

  • Product images and thumbnails for Web publishing

  • Press release texts

  • Print media advertisements

  • Other promotional texts and translations

IX

The company has decided to test the use of messaging to manage its proposed B2B applications. The plan calls for a small test that will allow a user from outside the firewall to place an order and track its status. The order must be booked into the main system. Then, depending on the location of the customer, the order is routed to the nearest region for shipping. The Information Exchange (IX) schema stores such information.

Eventually, the company intends to expand beyond its current in-house distribution system to a system that will allow other businesses to provide the shipping. The messages sent must be in a self-contained format. XML is the perfect format for sending messages, and both Advanced Queuing Servlet and Oracle Internet Directory provide the required routing between the queues.

After the orders are either shipped or back ordered, a message must be sent back to the employee concerned to inform about the status of the order and to initiate the billing. It is important that the message be delivered only once and that there be a system for tracking and reviewing messages to facilitate resolution of any discrepancies with the order.

For the purpose of this test application, the company uses a database server and an application server. The application provides a mechanism for examining the XML messages as well as monitoring the queues. To demonstrate connectivity from outside the firewall, both the generation of a new order and customer service reporting are performed using queues. The new order application directly enables a queue, while the customer service queries require XML messaging to disable a queue.

SH

The sample company does a high volume of business, so it runs business statistics reports to aid in decision making. Many of these reports are time-based and nonvolatile. That is, they analyze past data trends. The company loads data into its data warehouse regularly to gather statistics for these reports. These reports include annual, quarterly, monthly, and weekly sales figures by product. These reports are stored with the help of Sales History (SH) schema.

The company also runs reports on distribution channels through which its sales are delivered. When the company runs special promotions on its products, it analyzes the impact of the promotions on sales. It also analyzes sales by geographical area.

PK+,&,PK(@A OEBPS/lot.htm[ List of Tables PKST`[PK (@Aoa,mimetypePK(@ApID:iTunesMetadata.plistPK(@AYuMETA-INF/container.xmlPK(@A&_hJOEBPS/scripts.htmPK(@A[pTOOEBPS/cover.htmPK(@AN{v(OEBPS/overview.htmPK(@A[hcOEBPS/title.htmPK(@Ao OEBPS/loe.htmPK(@Af6ǂ}OEBPS/preface.htmPK(@A/ZGBOEBPS/index.htmPK(@Ab|W,R, OEBPS/img/comsc009.gifPK(@A2C SI9OEBPS/img/comsc008.gifPK(@A OOEBPS/img/comsc010.gifPK(@A7e OEBPS/diagrams.htmPK(@A,BIѸOEBPS/img_text/comsc009.htmPK(@A!eR"M"OEBPS/img_text/comsc010.htmPK(@AwJ33OEBPS/img_text/comsc008.htmPK(@A5 0 OEBPS/toc.ncxPK(@A'8+w&w."OEBPS/installation.htmPK(@A#OEBPS/content.opfPK(@AD<[to tOEBPS/lof.htmPK(@A_ #OEBPS/dcommon/prodbig.gifPK(@AY@ xOEBPS/dcommon/doclib.gifPK(@A$rrOEBPS/dcommon/oracle-logo.jpgPK(@A4OEBPS/dcommon/contbig.gifPK(@A:OEBPS/dcommon/darbbook.cssPK(@AMά""!;OEBPS/dcommon/O_signature_clr.JPGPK(@APz >^OEBPS/dcommon/feedbck2.gifPK(@A-_OEBPS/dcommon/feedback.gifPK(@Aː5fOEBPS/dcommon/booklist.gifPK(@AN61hOEBPS/dcommon/cpyr.htmPK(@A!:3.zOEBPS/dcommon/masterix.gifPK(@AeӺ1,|OEBPS/dcommon/doccd.cssPK(@A7 y~OEBPS/dcommon/larrow.gifPK(@A#OEBPS/dcommon/indxicon.gifPK(@AS'" OEBPS/dcommon/leftnav.gifPK(@Ahu,yOEBPS/dcommon/uarrow.gifPK(@Al-OJOEBPS/dcommon/oracle.gifPK(@A()OEBPS/dcommon/index.gifPK(@AGC oOEBPS/dcommon/bookbig.gifPK(@AJV^OEBPS/dcommon/rarrow.gifPK(@A枰pkOEBPS/dcommon/mix.gifPK(@Ao"nR M ]OEBPS/dcommon/doccd_epub.jsPK(@Av I OEBPS/dcommon/toc.gifPK(@A r~$EOEBPS/dcommon/topnav.gifPK(@A1FAOEBPS/dcommon/prodicon.gifPK(@A3( # =OEBPS/dcommon/bp_layout.cssPK(@Ax[?:OEBPS/dcommon/bookicon.gifPK(@Ap*c^5OEBPS/dcommon/conticon.gifPK(@AʍOEBPS/dcommon/blafdoc.cssPK(@A+&OEBPS/dcommon/rightnav.gifPK(@Aje88ROEBPS/dcommon/oracle-small.JPGPK(@Aއ{&!OEBPS/dcommon/help.gifPK(@A/R4t OEBPS/toc.htmPK(@A+,&,.OEBPS/rationale.htmPK(@AST`[ B[OEBPS/lot.htmPK88j