AUTOSAR_DIO_Tool_UserManuals




AUTOSAR MCAL R4.0.3
User‟s Manual
DIO Driver Component Ver.1.0.2
Generation Tool User‟s Manual
Target Device:
RH850/P1x
All information contained in these materials, including products and product specifications,
represents information on the product at the time of publication and is subject to change by
Renesas Electronics Corp. without notice. Please review the latest information published by
Renesas Electronics Corp. through various means, including the Renesas Electronics Corp.
website
(http://www.renesas.com). www.renesas.com Rev.0.02 Apr 2015
2
Notice
1.
All information included in this document is current as of the date this document is issued. Such information, however, is subject to
change without any prior notice. Before purchasing or using any Renesas Electronics products listed herein, please confirm the latest
product information with a Renesas Electronics sales office. Also, please pay regular and careful attention to additional and different
information to be disclosed by Renesas Electronics such as that disclosed through our website.
2.
Renesas Electronics does not assume any liability for infringement of patents, copyrights, or other intellectual property rights of third
parties by or arising from the use of Renesas Electronics products or technical information described in this document. No license,
express, implied or otherwise, is granted hereby under any patents, copyrights or other intellectual property rights of Renesas
Electronics or others.
3.
You should not alter, modify, copy, or otherwise misappropriate any Renesas Electronics product, whether in whole or in part.
4.
Descriptions of circuits, software and other related information in this document are provided only to illustrate the operation of
semiconductor products and application examples. You are fully responsible for the incorporation of these circuits, software, and
information in the design of your equipment. Renesas Electronics assumes no responsibility for any losses incurred by
you or third parties arising from the use of these circuits, software, or information.
5.
When exporting the products or technology described in this document, you should comply with the applicable export control laws
and regulations and follow the procedures required by such laws and regulations. You should not use Renesas Electronics products
or the technology described in this document for any purpose relating to military applications or use by the military, including but
not limited to the development of weapons of mass destruction. Renesas Electronics products and technology may not be used for or
incorporated into any products or systems whose manufacture, use, or sale is prohibited under any applicable domestic or foreign
laws or regulations.
6.
Renesas Electronics has used reasonable care in preparing the information included in this document, but Renesas Electronics does
not warrant that such information is error free. Renesas Electronics assumes no liability whatsoever for any damages incurred by
you resulting from errors in or omissions from the information included herein.
7.
Renesas Electronics products are classified according to the following three quality grades: "Standard", "High Quality", and
"Specific". The recommended applications for each Renesas Electronics product depends on the product's quality grade, as indicated
below. You must check the quality grade of each Renesas Electronics product before using it in a particular application. You may
not use any Renesas Electronics product for any application categorized as "Specific" without the prior written consent of Renesas
Electronics. Further, you may not use any Renesas Electronics product for any application for which it is not intended without the
prior written consent of Renesas Electronics. Renesas Electronics shall not be in any way liable for any damages or losses incurred by
you or third parties arising from the use of any Renesas Electronics product for an application categorized as "Specific" or for which
the product is not intended where you have failed to obtain the prior written consent of Renesas Electronics. The quality grade of
each Renesas Electronics product is "Standard" unless otherwise expressly specified in a Renesas Electronics data sheets or data
books, etc.
"Standard":
Computers; office equipment; communications equipment; test and measurement equipment; audio and visual
equipment; home electronic appliances; machine tools; personal electronic equipment; and industrial robots.
"High Quality": Transportation equipment (automobiles, trains, ships, etc.); traffic control systems; anti-disaster systems; anti- crime
systems; safety equipment; and medical equipment not specifically designed for life support.
"Specific":
Aircraft; aerospace equipment; submersible repeaters; nuclear reactor control systems; medical equipment or
systems for life support (e.g. artificial life support devices or systems), surgical implantations, or healthcare
intervention (e.g. excision, etc.), and any other applications or purposes that pose a direct threat to human life.
8.
You should use the Renesas Electronics products described in this document within the range specified by Renesas Electronics,
especially with respect to the maximum rating, operating supply voltage range, movement power voltage range, heat radiation
characteristics, installation and other product characteristics. Renesas Electronics shall have no liability for malfunctions or damages
arising out of the use of Renesas Electronics products beyond such specified ranges.
9.
Although Renesas Electronics endeavors to improve the quality and reliability of its products, semiconductor products have specific
characteristics such as the occurrence of failure at a certain rate and malfunctions under certain use conditions. Further, Renesas
Electronics products are not subject to radiation resistance design. Please be sure to implement safety measures to guard them against
the possibility of physical injury, and injury or damage caused by fire in the event of the failure of a
Renesas Electronics product, such as safety design for hardware and software including but not limited to redundancy, fire control
and malfunction prevention, appropriate treatment for aging degradation or any other appropriate measures. Because the evaluation
of microcomputer software alone is very difficult, please evaluate the safety of the final products or system manufactured by you.
10.
Please contact a Renesas Electronics sales office for details as to environmental matters such as the environmental compatibility of
each Renesas Electronics product. Please use Renesas Electronics products in compliance with all applicable laws and regulations
that regulate the inclusion or use of controlled substances, including without limitation, the EU RoHS Directive. Renesas Electronics
assumes no liability for damages or losses occurring as a result of your noncompliance with applicable laws and regulations.
11. This document may not be reproduced or duplicated, in any form, in whole or in part, without prior written consent of Renesas
Electronics.
12.
Please contact a Renesas Electronics sales office if you have any questions regarding the information contained in this
document or Renesas Electronics products, or if you have any other inquiries.
(Note 1) "Renesas Electronics" as used in this document means Renesas Electronics Corporation and also includes its majority- owned
subsidiaries.
(Note 2) "Renesas Electronics product(s)" means any product developed or manufactured by or for Renesas Electronics.
4
Abbreviations and Acronyms Abbreviation / Acronym Description API
Application Programming Interface
AUTOSAR
AUTomotive Open System ARchitecture
BSWMDT
Basic Software Module Description Template
ECU
Electronic Control Unit
Id
Identifier
MCAL
Microcontroller Abstraction Layer
Dio/DIO
Digital Input Output
XML
eXtensible Mark-up Language
Definitions Terminology Description BSWMDT File
This file is the template for the Basic Software Module Description.
Configuration XML File
This file contains the setting of command line options.
ECU Configuration Description
Input file to DIO Driver Generation Tool. It is generated by ECU
File
Configuration Editor.
Sl.No
Serial Number.
Translation XML File
This file contains the translation and device specific header file path.
5
6
Table of Contents Chapter 1 Introduction ........................................................................................ 9 1.1 Document Overview ............................................................................................................. 9 Chapter 2 Reference ......................................................................................... 11 2.1 Reference Documents ........................................................................................................ 11 2.2 Trademark Notice................................................................................................................ 11 Chapter 3 DIO Driver Generation Tool Overview ............................................ 13 Chapter 4 Input Files ......................................................................................... 15 Chapter 5 Output Files ...................................................................................... 17 Chapter 6 Precautions ...................................................................................... 19 Chapter 7 User Configuration Validation ........................................................ 21 Chapter 8 Messages.......................................................................................... 23 8.1 Error Messages ................................................................................................................... 23 8.2 Warning Messages ............................................................................................................. 26 8.3 Information Messages ........................................................................................................ 26 Chapter 9 Notes ...................................................................................................... 27 7
List of Figures Figure 3-1 Overview of DIO Driver Generation Tool ........................................................................... 13 List of Tables
Table 5-1 Output Files Description ..................................................................................................... 17
8
Introduction Chapter 1 Chapter 1 Introduction The DIO Driver component provides the service for initializing the whole DIO
structure of the microcontroller.
The DIO Driver module comprises of two sections as Embedded Software
and the Generation Tool to achieve scalability and configurability.
The document describes the features of the DIO Driver Generation Tool. DIO
Driver Generation Tool is a command line tool that extracts information from
ECU Configuration Description File and BSWMDT File and generates DIO
Driver C Source and C Header files.
Dio_Cfg.h and Dio_PBcfg.c.
This document contains information on the options, input and output files of
the DIO Driver Generation Tool. In addition, this manual covers a step-by-step
procedure for the usage of tool.
ECU Configuration Description File contains information about DIO
configuration.
1.1 Document Overview This user manual is organized as given in the table below:
Section Contents Section 1 (Introduction)
Provides an introduction to the document and explains how information
is organized in this manual.
Section 2 (Reference)
Provides a list of documents referred while developing this document.
Section 3 (DIO Driver
Provides the DIO Driver Generation Tool Overview.
Generation Tool Overview)
Section 4 (Input Files)
Provides information about ECU Configuration Description File.
Section 5 (Output Files)
Explains the output files that are generated by the DIO Driver
Generation Tool.
Section 6 (Precautions)
Contains precautions to be taken during configuration of ECU
Configuration Description File.
Section 7 (User Configuration
Describes about user configuration validation done by the DIO Driver
Validation)
Generation Tool.
Section 8 (Messages)
Describes all the Error/Warning/Information messages of R4.0.3 which
helps the user to understand the probable reason for
the same.
Section 9 (Notes)
Provides notes to help the user to understand this document better.
9
Chapter 1 Introduction 10
Reference Chapter 2 Chapter 2 Reference 2.1 Reference Documents The following table lists the documents referred to develop this document:
Sl.No. Title Version 1.
Autosar R4.0 2.5.0
AUTOSAR_SWS_DIODriver.pdf
P1x Parameter Definition File 1.0.3
2.
R403_DIO_P1M_04_05_12_13_20_21.arxml
3.
P1x Parameter Definition File 1.0.4
R403_DIO_P1M_10_11_14_15_18_19_22_23.arxml
2.2 Trademark Notice Microsoft and Windows are trademarks/registered trademarks of Microsoft
Corporation.
11
Chapter 2 Reference 12
DIO Driver Generation Tool Overview Chapter 3 Chapter 3 DIO Driver Generation Tool Overview DIO Driver Generation Tool overview is shown below.
ECU Configuration Description File, BSWMDT DIO Driver Dio_Cfg.h, File, Translation Generation Dio_PBcfg.c XML File and Tool Configuration XML File Figure 3-1 Overview of DIO Driver Generation Tool DIO Driver Generation Tool is a command line tool that extracts, analyzes the
configuration details provided in the input file and validates correctness of the
data and provides scalability and configurability for DIO Driver module. It
accepts ECU Configuration Description File(s), Translation XML File,
BSWMDT File and Configuration XML File as input and displays appropriate
context sensitive error messages for wrong input and exits. Tool creates the
Log file (Msn.log) that contains the list of Error/Warning/Information messages
in the output directory.
For the error free input file, the tool generates the following output files:
Dio_Cfg.h and Dio_PBcfg.c.
Dio_Cfg.h will be compiled and linked with DIO Driver Component.
Dio_PBcfg.c will be compiled and linked separately from the other C Source
files and placed in flash.
ECU Configuration Description File can be created or edited using ECU
Configuration Editor.
Remark •
In case of errors the generation tool returns a 1, in case of no errors
the generation tool returns a 0.
•
DIO Driver Generation Tool uses “Common Published Information” from
DIO module specific BSWMDT File. DIO module specific BSWMDT File
should not be updated manually since it is “Static Configuration” file.
13
Chapter 3 DIO Driver Generation Tool Overview 14
Input Files Chapter 4 Chapter 4 Input Files DIO Driver Generation Tool accepts ECU Configuration Description File(s),
BSWMDT File, Translation XML File and Configuration XML File as input.
DIO Driver Generation Tool needs information about DIO Driver module.
Hence ECU Configuration Description File should contain configuration of
DIO Driver module. Generation Tool ignores any other AUTOSAR component
configured in the ECU Configuration Description File. ECU Configuration
Description File can be generated using configuration editor.
ECU Configuration Description File must comply with AUTOSAR standard
ECU Configuration Description File format.
Remark The detailed explanation about the parameters and containers are found in
Parameter Definition File mentioned in the Reference Documents section.
15
Chapter 4 Input Files 16
Output Files Chapter 5 Chapter 5 Output Files DIO Driver Generation Tool generates configuration details in C Header and
C Source files.
(DIO Driver Generation Tool will generate Dio_Cfg.h and
Dio_PBcfg.c files.).
The content of each output file is given in the table below:
Table 5-1 Output Files Description Output File Details Dio_Cfg.h
This file contains the macro definitions for development error detects, version info API
and channel group. This file contains DIO Channel Configuration Handles, DIO Port
Configuration Handles and DIO Channel Group Configuration Handles.
Dio_PBcfg.c
This file contains Data Structures for DIO Port Group Configuration, DIO Port Channel
Configuration and DIO Port Channel Group Configuration. This file also contains
information on Number of ports and Channels configured.
Remark Output files generated by DIO Driver Generation Tool should not be modified
or edited manually.
17
Chapter 5 Output Files 18
Precautions Chapter 6 Chapter 6 Precautions • ECU Configuration Description File and BSWMDT File must comply with
AUTOSAR standard for R4.0.3 ECU Configuration Description File and
BSWMDT File respectively.
• The input file must contain DIO Driver module.
• Default Configuration XML File (Dio_X1x.cfgxml) must be present in same
location of Dio_X1x.exe.
• If Translation XML File is not provided on the command line, Dio_X1x.trxml
which is present in same location of Dio_X1x.exe is considered as „default‟
Translation XML File.
• If Configuration XML File is not provided on the command line,
Dio_X1x.cfgxml which is present in same location of Dio_X1x.exe is
considered as „default‟ Configuration XML File.
• Translation XML File should contain the file extension „.trxml‟.
• Configuration XML File should contain the file extension „.cfgxml‟.
• All the function names and the string values configured should follow C
syntax for variables. It can only contain alphanumeric characters and “_”. It
should start with an alphabet.
• If the output files generated by DIO Driver Generation Tool are modified
externally, then they may not produce the expected results or may lead to
error/warning/Information messages.
• Short Name for a container should be unique within a name space.
• An error free ECU Configuration Description File generated from
configuration editor has to be provided as input to the DIO Driver
Generation Tool. Otherwise Tool may not produce the expected results or
may lead to errors/warnings/information messages.
• User has to make sure that the respective device specific configuration file
is used otherwise Tool may not produce the expected results or may lead
to errors/warnings/information messages.
• The description file should always be generated using AUTOSAR specified
configuration editor and it should not be edited manually.
Remark Please refer the DIO Component User Manual for deviations from AUTOSAR
Specifications, if any.
19
Chapter 6 Precautions 20
User Configuration Validation Chapter 7 Chapter 7 User Configuration Validation This section provides help to analyze the error, warning and information
messages displayed during the execution of DIO Driver Generation Tool. It
ensures conformance of input file with syntax and semantics. It also performs
validation on the input file for correctness of the data.
For more details on list of Error/Warning/Information messages that are
displayed as a result of input file(s) validation, refer Chapter “8
Messages”.
The Generation Tool displays error or warning or information when the user
has configured incorrect inputs. The format of Error/Warning/Information
message is as shown below.
• ERR/WRN/INF<mid><xxx>: <Error/Warning/Information Message>.
where,
<mid>: 120 - DIO Driver Module id (120) for user configuration checks.
000 - for command line checks.
<xxx>: 001-999 - Message id.
• File Name: Name of the file in which the error has occurred
• Path: Absolute path of the container in which the parameter is present
„File Name‟ and „Path‟ need not be present for all Error/Warning/Information
messages.
21
Chapter 7 User Configuration Validation 22
Messages Chapter 8 Chapter 8 Messages The messages help to identify the syntax or semantic errors in the ECU
Configuration Description File. Hence it ensures validity and correctness of
the information available in the ECU Configuration Description File.
The following section gives the list of error, warning and information
messages displayed by the Generation Tool.
8.1 Error Messages ERR120001: Number of fields is not same for the entity 'Structure Name'. This error occurs, if the number of fields is not same in the structure that is to
be generated in the output file.
ERR120002: Field 'Field Name' is empty in the entity 'Structure Name'. This error occurs, if the structure fields that are to be generated in the output
file are empty.
ERR120003: 'DIO Driver' Component is not present in the input file(s). This error occurs, if DIO Driver Component is not present in the input ECU
Configuration Description File(s).
ERR120004: The parameter 'parameter name' in the container 'container
name' should be configured. This error occurs, if any of the mandatory configuration parameter(s)
mentioned below is (are) not configured in ECU Configuration Description File.
The list of mandatory parameters with respect to container is listed below:
Parameter Name Container Name DioDevErrorDetect
DioMaskedWritePortApi
DioVersionInfoApi
DioGeneral
DioVersionCheckExternalModules
DioDeviceName
DioFlipChannelApi
DioCriticalSectionProtection
23
Chapter 8 Messages Parameter Name Container Name DioPortName
DioPort
DioChannelBitPosition
DioChannel
DioPortMask
DioChannelGroup
DioPortOffset
ERR120005: The value <value for DioPortName> configured for the
parameter ‘DioPortName’ present in the container ‘DioPort’ should be
unique. This error occurs, if the value for parameter DioPortName present in the
container DioPort is not unique.
ERR120006: The value for parameter ‘DioChannelBitPosition’ present in
the container ‘DioChannel’ of the DIO port group <value for
DioPortName parameter> is not in the range of <Start> and <End>. This error occurs, if the value for parameter DioChannelBitPosition present in
the container DioChannel for respective DIO port group is not valid as
configured channel bit position must belongs to the respective DIO port
group. In above error message, <Start> and <End> will be replaced by „start
channel bit position‟ and „end channel bit position‟ respectively for selected
DIO port group.
Example: Suppose in PORTGROUP_2_BITS_0_TO_2, only 0 to 2 channels
are available. If user configures channels, which does not belongs to
PORTGROUP_2_BITS_0_TO_2 then it is invalid configuration. Here start is 0
and end is 2.
ERR120007: The value <value for DioChannelBitPosition> configured for
the parameter ‘DioChannelBitPosition’ present in the container ‘DioChannel’ of the DIO port group <value for DioPortName parameter> should be unique. This error occurs, if the value for parameter DioChannelBitPosition present in
the container DioChannel is not unique for respective DIO port group
configured for the parameter DioPortName.
ERR120008: The value for parameter ‘DioPortMask’ <value for the
DioPortMask> present in the container ‘DioChannelGroup’ of the DIO
port group <value for DioPortName parameter> is not valid. This error occurs, if value for parameter DioPortMask present in the container
DioChannelGroup for respective DIO port group is not valid as the grouped
channels must belong to the respective DIO port group.
Example: Suppose in PORTGROUP_2_BITS_0_TO_2, only 0 to 2 channels
are available. In this case, user should not consider channel 3 and channel 4
in channel grouping, since channel 3 and channel 4 does not belong to
PORTGROUP_2_BITS_0_TO_2.
ERR120009: The value for parameter ‘DioPortMask’ <value for the
DioPortMask> present in the container ‘DioChannelGroup’ of the DIO
port group <value for DioPortName parameter> is not valid. While
masking, channels should be grouped in continuous order. 24
Messages Chapter 8 This error occurs, if value for parameter DioPortMask present in the container
DioChannelGroup is not valid. The grouped channels should be continuous
order.
Example: Channel 1 and Channel 5 cannot be grouped in one DIO Channel
Group since they are not continuous channels.
ERR120010: The value for parameter ‘DioPortOffset’ <value for the
DioPortOffset> present in the container ‘DioChannelGroup’ of the DIO
port group <value for DioPortName parameter> is not valid. The value of
the parameter ‘DioPortOffset’ should be equal to the start position of the
DIO channel group. This error occurs, if the value for parameter DioPortOffset present in the
container DioChannelGroup is not valid. The value of the parameter
DioPortOffset should be equal to the start position of the DIO channel group.
Example: Suppose DIO channel grouping started from Channel 2 then value
for parameter DioPortOffset should be 2.
ERR120011: The short name <short name for DioPort> configured for
the container ‘DioPort’ should be unique. This error occurs, if short name of the container DioPort is not unique in ECU
Configuration Description File.
ERR120012: The short name <short name for DioChannel> configured
for the container ‘DioChannel’ should be unique. This error occurs, if short name of the container DioChannel is not unique in
each DioPort container.
ERR120013: The short name <short name for DioChannelGroup> configured for the container ‘DioChannelGroup’ should be unique. This error occurs, if short name of the container DioChannelGroup is not
unique in each DioPort container.
ERR120014: The number of ‘DioPort’ container is not same
across multiple configuration sets. This error occurs, if the number of DioPort container is not same across
multiple configuration sets.
ERR120015: The number of ‘DioChannel’ container is not same across
multiple configuration sets. This error occurs, if the number of DioChannel container is not same across
multiple configuration sets.
ERR120016: The number of ‘DioChannelGroup’ container is not same
across multiple configuration sets. This error occurs, if the number of DioChannelGroup container is not same
across multiple configuration sets.
25
Chapter 8 Messages .
ERR120017: The container short name of ‘DioPort’ container is not
same across multiple configuration sets. This error occurs, if the container short name of DioPort container is not same
across multiple configuration sets.
ERR120018: The container short name of ‘DioChannel’ container is not
same across multiple configuration sets. This error occurs, if the container short name of DioChannel container is not
same across multiple configuration sets.
ERR120019: The container short name of ‘DioChannelGroup’ container
is not same across multiple configuration sets. This error occurs, if the container short name of DioChannelGroup container
is not same across multiple configuration sets.
8.2 Warning Messages None.
8.3 Information Messages None.
26
Notes Chapter 9 Chapter 9 Notes “Generation tool” and “Tool” terminologies are used interchangeably to refer
DIO driver generation Tool
27
Chapter 9 Notes 28
Revision History Sl.No. Description Version Date 1.
Initial Version
1.0.0
30-Sep-2013
2.
Parameter „DioCriticalSectionProtection‟ is updated in Error
1.0.1
01-Sep-2014
message „ERR120004‟.
Reference Documents section is updated for addition of Parameter
definition file reference in chapter 2.
Precautions chapter is updated.
3.
Section 2.1 Reference documents section is updated with the
1.0.2
27-Apr-2015
parameter definition file names.
29
29
AUTOSAR MCAL R4.0.3 User's Manual DIO Driver Component Ver.1.0.2 Generation Tool User's Manual Publication Date: Rev.0.02, April 27, 2015
Published by: Renesas Electronics Corporation

SALES OFFICES http://www.renesas.com Refer
to "http://www.renesas.com/" for the latest and de tailed information.
Renesas Electronics America Inc. 2880 Scott Boulevard Santa Clara, CA 95050-2554, U.S.A.
Tel: +1-408-588-6000, Fax: +1-408-588-6130
Renesas Electronics Canada Limited 1101 Nicholson Road, New market, Ontario L3Y 9C3, Canada
Tel: +1-905-898-5441, Fax: +1-905-898-3220
Renesas Electronics Europe Limited Dukes Meadow, Millboard Road, Bourne End, Buckinghamshire, SL8 5FH, U.K
Tel: +44-1628-585-100, Fax: +44-1628-585-900
Renesas Electronics Europe GmbH
Arcadiastrasse 10, 40472 Düsseldorf, Germany
Tel: +49-211-65030, Fax: +49-211-6503-1327
Renesas Electronics (China) Co., Ltd. 7th Floor, Quantum Plaza, No.27 ZhiChunLu Haidian District, Beijing 100083, P.R.China
Tel: +86-10-8235-1155, Fax: +86-10-8235-7679
Renesas Electronics (Shanghai) Co., Ltd. Unit 204, 205, AZIA Center, No.1233 Lujiazui Ring Rd., Pudong District, Shanghai 200120, China
Tel: +86-21-5877-1818, Fax: +86-21-6887-7858 / -7898
Renesas Electronics Hong Kong Limited Unit 1601-1613, 16/F., Tower 2, Grand Century Place, 193 Prince Edward Road West, Mongkok, Kowloon, Hong Kong
Tel: +852-2886-9318, Fax: +852 2886-9022/9044
Renesas Electronics Taiwan Co., Ltd. 7F, No. 363 Fu Shing North Road Taipei, Taiwan
Tel: +886-2-8175-9600, Fax: +886 2-8175-9670
Renesas Electronics Singapore Pte. Ltd. 1 harbourFront Avenue, #06-10, keppel Bay Tower, Singapore 098632
Tel: +65-6213-0200, Fax: +65-6278-8001
Renesas Electronics Malaysia Sdn.Bhd. Unit 906, Block B, Menara Amcorp, Amcorp Trade Centre, No. 18, Jln Persiaran Barat, 46050 Petaling Jaya, Selangor Darul Ahsan, Malaysia
Tel: +60-3-7955-9390, Fax: +60-3-7955-9510
Renesas Electronics Korea Co., Ltd. 11F., Samik Lavied' or Bldg., 720-2 Yeoksam-Dong, Kangnam-Ku, Seoul 135-080, Korea
Tel: +82-2-558-3737, Fax: +82-2-558-5141
© 2015 Renesas Electronics Corporation. All rights reserved.
Colophon 1.0



AUTOSAR MCAL R4.0.3
User‟s Manual
Document Outline