Learning CWR from Scratch

The fact is that without CWR capabilities, it is impossible to manage thousands of works in multiple collecting organizations. CWR was conceived to streamline this process. Although it did not yet completely live up to the challenge, it became a necessity.

CWR is NOT for Humans

CWR was not intended for humans. But it has fundamental design flaws, the specification is vague and there are no official examples. This results in various specification interpretations and CWR dialects, as well as many operational issues. In order to avoid or solve them, being able to read and edit CWR directly is a huge benefit.

We want our staff to understand it thoroughly. And we do not believe that this knowledge should be limited to few.

Typical issues

One typical issue is that clients send us data that contains characters that are not valid in CWR. For example, comma (,) is not allowed in names, including publishers’ names, although it is allowed in titles. We solve such issues automatically.

There are, however, situations when such automation is not possible. CWR has huge issues when dealing with non-ASCII characters because one byte can have different meanings in different character sets. We have to find out which language it is in, which character set, and replace it with a proper ASCII character(s). If data comes in CWR format, it is hard to do this automatically, as CWR parser makes a mess out of it. This, like many other issues, must be solved manually.

Detecting and fixing such errors requires knowledge about CWR, and ability to read it helps a lot.

Lessons in CWR

CWR can be learned very fast if one has the tools, examples and a bit of help. Reaching a level where ‘standard’ data on typical work can be read with a help of a highlighter (visual validator) is possible within a week. (‘Standard’ will be explained in one of the following articles.)


A screenshot of the interface our staff uses when editing a work. CWR transaction is updated as data is changed, which makes leaning CWR a natural process.

Manual Data Input

For a small data set in some custom file format, it is easiest to type it in manually into our system. Each change is reflected in CWR transaction overview, as shown in the example above. We have several really messy ‘Kobayashi Maru’ CSV files for initial training, as our novice has to type the data in, examine CWR and then compare it with data in ASCAP and BMI repertories.

Our free Minimal CWR Registration Tool is publicly available and is, as far as we know, the next best thing for the first lesson in CWR.

EBR vs CWR2.1 Imports

The next step usually involves migrating an EBR file into CWR and importing both into the system. In complex EBR files, there actually might be some differences. EBR, although it has fewer fields than CWR, actually can describe relationships between writers and multiple original publishers better than CWR 2.1, the only commonly used version. (This has been solved in CWR 2.2, but it is still not used.)

By the way, for the actual conversion, the publicly available EBR to CWR converter is used.

Previous Registrations and Acknowledgments

Before a novice can start working on any real files, they have to examine a bunch of previous registrations, acknowledgment files, and correspondence with clients, collecting organizations and sub_publishers.

Try the steps in our Introduction to Common Works Registration if you want to learn more. It will not get you as far as the process described here, but it will demystify CWR and get you started in the right direction.

Expert Guidance

Did we mention that a novice has an experienced mentor to help them out with any questions they have? And it is the questions that eventually ensures us the novice is ready to work with our client’s data. Under supervision, naturally. This will be covered soon.


Many details are covered in other articles. We do offer consulting on CWR, data conversion services, both free and subscription-based tools, as well as several tools for developers.