Modern capitalism rests on a foundation of property rights, agreements between parties to transfer those rights, and laws that enforce those rights and agreements. My impression is that property rights in virtual worlds are very simple. If I have an item in my Second Life inventory, from an inworld perspective I "own" it entirely. No one can steal it from me without hacking the database, I can use it and sell it as I please. (EU Lawyer Vincent Scheurer has noted that this ownership doesn't mean a whole lot after leaving the inworld sphere, but that is an entirely different issue.) About the only sophistication I see is that I can sell it to someone with slightly restricted rights--they can't copy and/or modify it.
This state of affairs leaves us far from able to automatically enforce some of the most basic commercial arrangements, such as leasing (I can use it but must keep it in good condition), employment (I can bake with the chocoloate, but I can't eat it), transportation (I can move the box, but I can't look inside it).
Since my goal is to create virtual worlds that can be used to study real-world business (see my first TN post), I use this post to describe some of the property rights that should be supported in code by commerce-oriented worlds, so that code can protect those rights. If they aren't coded in, expensive and labor-intensive intervention would be required, and no virtual world manager wants that. (Judging from recent comments on this blog, not many users want human management intervention either.)
As I am new to virtual worlds, I look forward to being educated by Terra Novans on whether any worlds have attempted to implement rights similar to those I specified, if not, why not, and what I am missing.
Throughout this post, I refer to property rights as "authorities," because I am pretty sure that is how programmers would think of them. And after all, the term “right” suggests that someone ought to be able to do something, but might somehow be prevented from doing so. (I have a right to enter my own house, but someone could change my locks without my permission.) "Authority" suggests a power to do something, not just a recourse if someone prevented me from doing so.
I take a very object-oriented view of the world over which authorities are granted. The world is populated by goods, all of which have attributes (like quality, quantity, mass, location, etc.). Some goods are "transformative"--they have production functions that create new goods from old, or simply change the attributes of old goods. I refer to most of these transformative goods as machines, but if they change the location of the good, I call them "vehicles." For more on production functions, see this TN post.
I specify seven authorities. Five are authorities over goods or attributes of goods (primary authorities), while two are authorities over other authorities (meta-authorities).
The five primary authorities are:
- Consumption. An actor with consumption authority over a good has the right to receive the consumption value the good provides to them (which may vary across actors). (I have written about consumption in this TN post). Consumption activities may or may not alter the properties of a good. For example, entering land or a building (forms of consumption) would be unlikely to alter their properties. However, consuming bread or bullets would cause them to cease to exist.
- Production. An actor with production authority over a productive good (a machine, vehicle or data collector) can use the good for production. An actor with production authority over a non-productive good can use that good in a machine over which they also have production authority.
- Modification. An actor with modification authority over an attribute of a good can change that attribute.
- Transportation. An actor with transportation authority over a good can alter the location of that good by using a Vehicle over which the actor has production authority.
- Information. An actor with information authority over an attribute of a good can know that attribute.
The two meta-authorities are:
- Transfer. An actor with offer authority over another authority has the right to transfer that authority to another actor, conditional on the acceptance of the authority by the recipient.
- Assignment. An actor with assignment authority over the authorities of a new good produced by a machine can offer those authorities to actors, conditional on the acceptance of the authority by the recipient.
This relatively simple set of authorities and meta-authorities can describe a broad array of real-world business situations. For example, an actor employed as a baker would have a variety of production, modification and transportation authorities over the ingredients he must work with, but would rarely be granted any consumption authorities. A trucker would be unlikely to receive any authority other than transportation, and perhaps information over the volume and density of the good. A broker might have a transfer authority over the consumption authority for a good, but not actually have the consumption authority itself. Note that meta-authorities provide the ability to offer rights to others, but not to impose those authorities upon them against their will—this is essential because some authorities may be undesirable (like authorities over toxic waste).
Note that every primary authority refers to a particular good or attribute of a good (e.g, a production authority over a particular machine). Similarly, every meta-authority refers to a particular primary authority. However, a single authority may be held by multiple actors. For example, many workers in a factory would likely have production authority over the same machine. Thus, there would need to be a way to arrange voting rights that would deal with disputes--again, without involving human intervention. Voting is itself a complicated beast....more on that in another post, perhaps.
Let me be the first to point out that I do not discuss intellectual property rights. For example, I did not specify an authority governing the ability to disclose information to another party. The reason is that embedding such an authority in code would have little practical value. For example, assume I am permitted to know the consumption value of a good that I have non-transferable consumption authority for, but am not permitted to tell anyone that quantity. Would I be able to publish a report that lists my total quantity of consumption value? If so, I could construct a pair of reports that would communicate the quantity in question (one that includes it, one that does not). But if I cannot incorporate the information into any report, I would be dramatically hindered in reporting aggregate information. An additional consideration is that I could easily circumvent the restriction by conveying the information in prose, through chat or instant messaging.
Intellectual property rights are important. I just don't see any way to have the enforced automatically through code. Perhaps some readers have ideas on that front.