---
title: Object Streams & Version Number
description: When a PDF file contains Object Streams, the PDF Version number must be set to %PDF-1.5 or greater, otherwise the PDF is malformed.
---

[Appligent Labs ](https://labs.appligent.com/appligent-labs)

# [Object Streams & Version Number](https://labs.appligent.com/appligent-labs/pdfblog/pdf_object_streams)

 Written by [Mark Gavin](https://labs.appligent.com/appligent-labs/author/mark-gavin) | Dec 5, 2008 5:00:00 AM

by Mark Gavin

Recently I have received several PDF documents which contain compressed object streams.  Object Streams are described in section 7.5.7 of [ISO-32000-1](https://labs.appligent.com/pdfblog/iso_32000-1/); and, are a mechanism of storing a collection of indirect Cos Objects together inside of a Cos Stream.

This Cos Stream; of Type “ObjStm” may or may not be compressed.  Though, it would be pointless not to compress the stream.

Object Streams became available starting with PDF 1.5; and, therein lies the reason for this blog posting.  Every one of the files with Object Streams, to cross my desk recently, has a version number of “PDF 1.4”.

The purpose of the [PDF Version Number](https://labs.appligent.com/pdfblog/pdf_version_numbers/) is to specify what PDF features may be present in a given PDF file.

When a PDF file contains Object Streams; the PDF Version number must be set to %PDF-1.5 or greater; otherwise, the PDF is malformed.

So, why is properly setting the PDF version number important?

In a nutshell; properly setting the PDF version number improves the performance and reliability of software used to read the PDF file.

Update: December 22, 2008

Today I received yet another malformed PDF file which contains compressed object streams; but, in this case the version number on this particular file is set to 1.3.  It appears some PDF developers are simply not reading [ISO-32000-1 ](https://labs.appligent.com/pdfblog/iso_32000-1/)or even the old PDF Reference.

[View full post](https://labs.appligent.com/appligent-labs/pdfblog/pdf_object_streams)

```json
{
  "@context" : "http://schema.org",
  "@type" : "BlogPosting",
  "author" : {
    "@type" : "Person",
    "name" : "Mark Gavin"
  },
  "dateModified" : "2024-03-07T22:22:32.992Z",
  "datePublished" : "2008-12-05T05:00:00Z",
  "headline" : "PDF Object Streams",
  "image" : {
    "@type" : "ImageObject",
    "height" : 1024,
    "url" : "https://44706453.fs1.hubspotusercontent-na1.net/hubfs/44706453/blog_media/163dd10e-3422-464d-bb12-fc2457045a9b.webp",
    "width" : 1024
  },
  "mainEntityOfPage" : "https://labs.appligent.com/appligent-labs/pdfblog/pdf_object_streams",
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "height" : 60,
      "url" : "/hs/hsstatic/content_shared_assets/static-1.4092/img/default-amp-logo.png",
      "width" : 60
    },
    "name" : "Appligent Labs"
  }
}
```