The paper describes experiences, ideas, and problems that were discovered while developing a digital rights management (DRM) extension to an XML browser. The supported rights description language is ODRL. The most significant implemented features are restrictions related to an individual, time, and usage-counts. On the other hand, some interesting features were intentionally left out. They include for example, aspect and target constraints as well as many security features. The most difficult tasks in implementing a DRM system are related to security and parsers. A secure DRM system requires the support of hardware devices. A DRM document parser depends profoundly on a flexible software architecture. Merging certificates and implementing an interface for creating certificates are also demanding. The three most challenging features in ODRL specification are logical operators, documents' internal links to its elements, and the requirement that child elements may depend on ancestor ...