[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Xerox DPRL and Rights Metadata
(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:email@example.com] , 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:firstname.lastname@example.org] 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 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
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.
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
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
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 mailto:email@example.com