Copyright law protects not ideas, but the form in which ideas are expressed. Thus, a copyright owner may control the reproduction of the original expression in a copyrighted work, such as a book, but cannot monopolize the concept or process expressed in the work.
In Canada, unauthorized reproduction of any substantial part of an original work may constitute an infringement of copyright in that work.
Canadian case law has defined reproduction to mean copying, which is the act of producing additional or new copies of the work in any material form. Reproduction can be established by direct proof of copying, or can be inferred from access to the copyright work and substantial similarity between the allegedly infringing work and the copyright work. However, an inference of copying can be rebutted by proof of independent creation. In other words, there is no copyright infringement if a work was created entirely independently.
Whether a part of a work is “substantial” shall not be measured only by the quantity of matter reproduced from a copyrighted work, even though that may be a significant factor. What is more important is the nature or quality of matter reproduced. Although it may be useful to compare components of each work, the overriding requirement for infringement is substantial similarity of the works as a whole and substantial similarity in the modes of expression.
A substantial part of a work is a flexible notion. It is a matter of fact and degree … What constitutes a substantial part is determined in relation to the originality of the work that warrants the protection of the Copyright Act. As a general proposition, a substantial part of a work is a part of the work that represents a substantial portion of the author’s skill and judgment expressed therein.
The law is settled that a computer program is protected by copyright at the source code and object code level.
However, questions remain as to whether copyright may extend to protect other components of the computer program, such as the structure, sequence or organization of the program, the user interface, application programming interface (API) and the functionality of the program.
The answers to these questions may very well depend on whether a particular component of a program qualifies as an expression of an idea, or the idea itself, in light of the over-all arrangement of the computer program.