Xerox DPRL and Rights Metadata
To: "'firstname.lastname@example.org'" <email@example.com> Subject: Xerox DPRL and Rights Metadata From: John Erickson <JErickson@YBP.com> Date: Thu, 26 Feb 1998 09:43:21 -0500
Note: Overview of DPRL by John Erickson. [Posting to NISO DOI List on Xerox DPRL and Rights Metadata.] In February 1998, John Erickson posted a review of DPRL based upon a 'December 1997' draft specification. The review reproduced below is now dated (incorrect) with respect to DPRL version 2.0, which provides an XML syntax. In the posting, John provided an "example of what an instance of the DPRL schema might look like using the XML-Data DTD (based on the example work specification given on page 16 of the ['December 1997'] DPRL language spec."
(I sent this to the NISO DOI Rights Metadata Working Group yesterday. I was asked to send it to the broader NISO DOI list, which is what I've done here; my apologies to those receiving duplicate copies...John)
To: The NISO DOI Rights Metadata Working Group
CC: Mark Stefik & Jonathan Zaremski, Xerox PARC
Xerox's DPRL (Digital Property Rights Language), developed by Mark Stefik [mailto:firstname.lastname@example.org] , has been mentioned on occasion in these rights metadata discussions. I think some members of this list have been aware of DPRL since it was first announced and Mark began writing about it in 1996, but precious few details have generally been available. Xerox has been working to change this to some degree, and is now licensing various aspects (tools, SDKs, etc) to implementers.
After seeing Mark Stefik at the DOI Tech Forum in December, I obtained a copy of the DPRL Language Specification. The remainder of this message discusses my review of the language, its bearing on the work of this group and my suggestions for future work. I strongly recommend that each of you request a copy of the specification yourself for the purposes of review; contact Jonathan Zaremski [mailto:email@example.com] who handles the business development, licensing and marketing for the Xerox PARC DPRL project.
1.0 What is DPRL?
DPRL is a language for expressing the rights, conditions and fees for using digital works. Although it does have elements for descriptive information, the focus of the language is on expressing how to handle certain rights, both for primary and derivative use. It allows a rights administrator to specify, for example, how copying, transferring, loaning, playing, printing, etc, may be handled. It allows the definition of different 'rights-groups' (collections of specific rights) for different communities. It allows the setting of fees for any activity for which a right code is defined, and it allows a variety of payment mechanisms to be associated with fee collection.
The bottom line is that DPRL is a language for expressing rights metadata. Unfortunately, it ignores all SGML/XML and IETF-related standardization efforts. However, I believe it has much to offer this working group in terms of schema design for rights metadata. As I describe later, it is quite possible to implement and extend DPRL using metalanguages such as XML.
2.0 DPRL Assumptions
DPRL assumes a trusted environment, and part of Xerox's licensing activity centers around toolkits that enable construction of that environment. 'Trust' simply means that the agents performing users' actions on an object must honor the rights specification for that object --- the agent must charge the user if that is specified, or prevent the action if the appropriate right code is not present. Trusted implementations can obviously range from individual trusted rendering tools all the way to a fully trusted network environment. Using DPRL one could actually express whether the user could move a file around their operating system, uninstall, etc, etc. Again, such a spec is only as good as the system that is trusted to honor it.
There is an implicit assumption that DPRL is executed by remote agents. That is, every agent that understands the DPRL code for an object looks for rights codes that it must honor; if it finds one, it does what the spec says, and if it doesn't, it must assume that the rights isn't granted. If I'm a viewer, I look for a 'render-code.' If I'm an editor, I look for a 'derivative-work-code.' If I'm a trusted version of Windows 95, I look for a 'transport-code' or a 'file-management-code.' If I'm an installer, I look for a 'configuration-code.'
DPRL assumes that global registries exist for work-ids, owner-ids, account-ids, player-ids, etc. No mention of 'how' is made, but this is not insurmountable --- most current IETF proposals include ways to roll elements from arbitrary namespaces into other schema. It provides a way to define relationships between objects, agents and users, but doesn't describe how to detail with agents or users.
3.0 DPRL and Rights Metadata
DPRL is clearly a way to precisely articulate one form of rights metadata. Certainly DPRL is an exemplar in this area, and any work that this group does toward the design of a standard rights metadata schema must take DPRL into consideration, at least as 'previous work.' Having said that, I see shortcomings; for example, I think that DPRL falls short of handling rights metadata at the *conceptual* level, which is how I would characterize the interests of this group, as evidenced by the DOI Rights Metadata document.
This is because DPRL doesn't [address] the concept of *setting* or *purpose* of use. DPRL can articulate that viewing or printing users must have paid or must be charged, for example, but it has no way of encapsulating at a high level the use of, say, an article in a journal. It can do the pieces, but only if usages have already been pre-authorized and assigned a code.
4.0 DPRL and Standards
DPRL is a metadata schema and can be expressed in XML. To test this idea, I applied the W3C XML-Data note of 05 Jan 1998 [http://www.w3.org/TR/1998/NOTE-XML-data-0105/] to the language, codifying DPRL elements in XML. An example of what an instance of the DPRL schema might look like using the XML-Data DTD appears below.
I've based this instance on the example work specification given on page 16 of the DPRL language spec. To save space, I've stubbed out the rights-list for the 'Distributor' rights-group.
<work> <description> <title>Moby Dog</title> <author>John Beagle</author> </description> <owner>Murphy-Books-ID12345-zxcvoiuyr</owner> <rights-group> <rights-group-name>Consumer</rights-group-name> <rights-list> <copy> <next-copy-rights> <delete>Distributor</delete> <access> <security-class>3</security-class> </access> <fee> <per-use>10</per-use> <to>Account-ID-678-qwerqeruyt</to> </fee> </next-copy-rights> </copy> <play> <fee> <metered> <rate>0.05</rate> <per>1:0:0</per> <to>Account-ID-678-qwerqeruyt</to> </metered> </fee> </play> <delete></delete> <transfer> </transfer> <loan> <next-copy-rights> <delete>Distributor</delete> <remaining-rights>Distributor</remaining-rights> <access> <security-class>3</security-class> </access> </next-copy-rights> </loan> </rights-list> </rights-group> <rights-group> <rights-group-name>Distributor</rights-group-name> <rights-list> : : </rights-list> </rights-group> </work>
After performing this exercise, it became clear to me that both DPRL and the electronic publishing community would be far better served if this language was XML-based. If this were to happen, our community would have the starting point for a compelling rights metadata standard, one that is openly extensible. It also becomes a compelling application of XML.
In my view, DPRL is not quite ready for prime time as a standard. For one thing, it would have to be based on a standard markup syntax. It needs to not only be openly extensible, but it needs also to allow the expression of conceptual groupings of elements. It should also make reference to standard means of naming objects and agents. This is just the beginning; I'm sure that are those of you who can speak to other standardization issues.
5.0 Next Steps
For those of you with an interest in working on the definition of a rights metadata schema, I think the first step is to contact Xerox and obtain the DPRL language spec. I've CC'd both Mark Stefik and Jonathan Zaremski on this message, so they'll know that you have been informed and what I've said. They'll also be able to directly engage us on this list, and individually.
I believe that this group is capable of producing a rights metadata standard that is useful to the DOI, W3C and IETF communities. Given what we've seen of Xerox's work in this area, certainly their involvement in the process and their sharing of the DPRL experience would be useful. However, Mark and Jonathan are the only ones who can speak to Xerox's interest in contributing to such an effort. Certainly there are intellectual property concerns that Xerox is going to have to deal with.
Regardless of the Xerox interest, a need for an open metadata standard exists and writing that standard should be the goal of this working group.
Have a GREAT one!
>| John Erickson, Ph.D. VP-Rights Technologies >| Yankee Rights Management >| 999 Maple Street 802-649-1847(v) >| Contoocook, NH 03229 802-649-2193(f) >| http://www.ybp.com/yrm firstname.lastname@example.org