Document Shape
Learn how to use the Document shape for paper documents and reports in ISO 5807 flowcharts
Document Shape
The Document shape represents a paper document, report, or any printed output in your flowchart. It's shown as a rectangle with a wavy bottom edge.
What is a Document Shape?
The Document shape represents:
- Paper documents and forms
- Printed reports
- Physical paperwork
- Generated documents
- PDF outputs
- Any tangible document output
According to ISO 5807, this shape specifically denotes a document or report in paper form.
When to Use
Use the Document shape for:
- Reports: "Generate monthly sales report", "Print invoice"
- Forms: "Create registration form", "Print receipt"
- Documents: "Generate contract", "Print boarding pass"
- Certificates: "Issue completion certificate", "Print diploma"
- Paper output: "Print shipping label", "Generate packing slip"
ISO 5807 Standard
According to ISO 5807, the Document symbol is defined as:
- A rectangle with wavy bottom
- Represents paper documents
- Used for printed or displayable output
- Distinct from stored data (files)
The wavy bottom edge symbolizes a sheet of paper.
Visual Appearance
In DiagramKit.AI, the Document shape appears as:
- Dimensions: 180×90 pixels
- Color: Light purple (#f5f3ff)
- Border: Purple (#7c3aed)
- Shape: Rectangle with wavy bottom edge
Best Practices
✅ Good Usage
[Process order]
   ↓
[Generate invoice document]
   ↓
[Print invoice]
   ↓
[Email PDF to customer]
   ↓
[End]
- Specify the document type (invoice, report, certificate)
- Use "Generate", "Print", or "Create" verbs
- Indicate the format when relevant (PDF, paper)
- Show what happens to the document after creation
❌ Avoid
- ❌ Digital files: "Save JSON file" (use Stored Data)
- ❌ Database records: "Store in database" (use Database)
- ❌ Processing: "Calculate total" (use Process)
- ❌ Too vague: "Document" (what kind?)
Common Examples
Example 1: Invoice Generation
[Calculate order total]
   ↓
[Apply taxes and discounts]
   ↓
[Generate invoice document]
   ↓
<Delivery method?>
  ↙              ↘
Email            Print
 ↓                ↓
[Send PDF]    [Print paper
 via email]    invoice]
Example 2: Report Creation
[Query sales data from database]
   ↓
[Calculate metrics]
   ↓
[Format results]
   ↓
[Generate monthly
 sales report]
   ↓
[Distribute to management]
Example 3: Certificate Issuance
[Verify course completion]
   ↓
<Passed?>
  ↙    ↘
Yes    No
 ↓      ↓
[Generate [Send
 completion  feedback]
 certificate]
 ↓
[Email PDF
 to student]
Label Writing Guidelines
Strong Labels (Recommended)
- "Generate invoice PDF"
- "Print packing slip"
- "Create purchase order document"
- "Issue completion certificate"
- "Generate shipping label"
Weak Labels (Avoid)
- "Document" (too vague)
- "Output" (not specific)
- "Create" (create what?)
- "Print" (print what?)
AI Prompt Tips
Use these prompts to add Document shapes with AI:
add a document step to generate invoice
insert a report generation document
create a document shape for printing receipt
add certificate generation document
Programming Equivalents
Document shapes represent document generation:
JavaScript/TypeScript:
// Document: Generate invoice PDF
const invoice = await generateInvoicePDF(order);
// Document: Create report document
const report = await createReport({
  type: 'monthly-sales',
  format: 'pdf',
  data: salesData
});
// Document: Print receipt
await printer.print({
  template: 'receipt',
  data: transaction
});
Python:
# Document: Generate invoice document
from reportlab.pdfgen import canvas
invoice_pdf = generate_invoice(order_data)
# Document: Create certificate
certificate = create_certificate({
    'name': student_name,
    'course': course_name,
    'date': completion_date
})
# Document: Print shipping label
label = print_shipping_label(shipment_info)
Report Generation Libraries:
- PDF: ReportLab, PDFKit, jsPDF
- Excel: ExcelJS, openpyxl
- Word: docx, python-docx
- HTML: Template engines → Print
Document Types
Business Documents
- Invoices: "Generate customer invoice"
- Receipts: "Print transaction receipt"
- Purchase Orders: "Create PO document"
- Quotes: "Generate price quote"
- Contracts: "Generate contract PDF"
Reports
- Sales Reports: "Generate monthly sales report"
- Analytics: "Create performance report"
- Financial: "Generate balance sheet"
- Audit: "Create audit trail document"
Certificates & Forms
- Certificates: "Issue completion certificate"
- Forms: "Generate application form"
- Licenses: "Print license document"
- Permits: "Generate work permit"
Labels & Tickets
- Shipping: "Print shipping label"
- Barcodes: "Generate product label"
- Tickets: "Print boarding pass"
- Tags: "Create asset tag"
Document Workflow Patterns
Generate and Distribute
[Collect data]
   ↓
[Generate report document]
   ↓
<Distribution?>
  ↙     ↓      ↘
Email  Print  Archive
 ↓      ↓      ↓
[Send] [Print] [Store
 PDF]  paper]  in DB]
Approval Workflow
[Generate contract document]
   ↓
[Send for review]
   ↓
<Approved?>
  ↙      ↘
Yes      No
 ↓        ↓
[Print   [Revise
 final    contract]
 contract]  ↓
           (loop back)
Multi-Document Generation
[Process order]
   ↓
   ├→[Generate invoice document]
   ├→[Generate packing slip document]
   └→[Generate shipping label document]
   ↓
[Package and ship]
Connections
Document shapes typically connect:
Input from:
- Process shapes (data formatting)
- Database shapes (data retrieval)
- Decision shapes (conditional generation)
- Other Document shapes (series)
Output to:
- Process shapes (distribution)
- Data I/O shapes (sending/printing)
- Decision shapes (approval)
- End symbols (final output)
Document vs. Other Shapes
| Use Document | Use Different Shape | |--------------|---------------------| | Paper invoice | Stored Data for digital file | | Printed report | Display for screen output | | PDF certificate | Data I/O for file export | | Physical form | Database for record storage |
Format Specifications
Common Document Formats
[Prepare data]
   ↓
<Output format?>
  ↙    ↓    ↘
PDF  Excel Word
 ↓    ↓     ↓
[Generate respective documents]
Multi-Format Output
[Format report data]
   ↓
[Generate report document]
   ↓
   ├→[Export as PDF]
   ├→[Export as Excel]
   └→[Export as CSV]
Template-Based Generation
[Select template]
   ↓
[Load template file]
   ↓
[Populate template with data]
   ↓
[Generate final document]
   ↓
<Preview needed?>
  ↙          ↘
Yes          No
 ↓            ↓
[Show       [Print
 preview]    directly]
Common Mistakes
Mistake 1: Using for Digital Files
❌ Wrong: [Save JSON file] (Document shape)
✅ Correct: [Save JSON file] (Stored Data shape)
Mistake 2: Using for Screen Display
❌ Wrong: [Show results on screen] (Document shape)
✅ Correct: [Display results] (Display shape)
Mistake 3: Too Generic
❌ Wrong: [Create document]
✅ Correct: [Generate customer invoice PDF]
Mistake 4: Processing Operations
❌ Wrong: [Calculate report totals] (Document shape)
✅ Correct: [Calculate totals] (Process) → [Generate report] (Document)
Batch Document Generation
[Get list of customers]
   ↓
   ┌←←←←←←←←←←←←←←┐
   ↓              ↑
[For each        ↑
 customer]       ↑
   ↓              ↑
[Generate        ↑
 monthly invoice ↑
 document]       ↑
   ↓              ↑
[Email PDF]      ↑
   ↓              ↑
<More customers?> ↑
   ↓ Yes ←←←←←←←←←┘
   ↓ No
[Generate summary
 report document]
Digital Signatures
[Generate contract document]
   ↓
[Send for digital signature]
   ↓
<Signed?>
  ↙    ↘
Yes    No
 ↓      ↓
[Store [Remind
 signed  signee]
 document]
Related Shapes
- Stored Data - For digital file storage
- Display - For screen output
- Data I/O - For general output operations
- Database - For storing document metadata
- Manual Input - For form data entry
Pro Tip: Use Document shapes for anything that could be physically printed or exists as a formatted output (PDF, Word, Excel). Use Stored Data for raw data files (JSON, CSV, XML).
Next Steps
- Learn about Stored Data for digital files
- Explore Display for screen output
- Understand Data I/O for general I/O
- Review report generation patterns for workflows
