User:Jsenn/U-form: Difference between revisions
Appearance
Content deleted Content added
No edit summary |
←Blanked the page |
||
Line 1: | Line 1: | ||
A '''U-form''' is an [[abstract data type]] comprising a [[Collection (computing)|collection]] of attribute-value pairs associated with a [[UUID|universally-unique identifier (UUID)]]. A '''U-form''' essentially comprises an [[Associative array|associative array]] augmented with a UUID and with keys limited to strings. |
|||
The UUID that is associated with a u-form is immutable, however all data "contained" in the u-form are mutable (including the keys/names). |
|||
The mutability of contained data combined with an immutable identifier make implementations of fully mutable, replicable digital objects possible. |
|||
This has applications in distributed computing, non-relational database systems, information visualization, and knowledge representation systems. |
|||
[[Navigational database|Navigational databases]], [[Entity-relationship model|Entity]] and [[Associative Entities|associative entity]] relationships can be implemented by using a UUID, or multiple UUIDs, as attribute values. |
|||
The u-form's design goals center around supporting an open, extensible distributed information space, emphasizing the unambiguous identity of data objects and the separation between data storage, data characterization, and schema development. |
|||
The use of non-semantic UUIDs combined with a simple attribute-value model draws a clear distinction between identity and data. |
|||
Although u-forms share certain design characteristics with serialization formats such as [[XML]], they should not be confused with such representational formats. Since u-forms are abstract, they do not specify any particular representational format. Indeed they may be stored as or communicated via XML or other types of serialization. |
|||
== Operations == |
|||
The operations defined for a u-form are similar to associative arrays: |
|||
* '''Set_Attribute''': Bind an attribute name to a value (replacing any existing binding to that name) |
|||
* '''Delete_Attribute''': Unbind an attribute name from a value and remove the name from the u-form |
|||
* '''Get_Attribute''': Find the value (if any) that is bound to a name. |
|||
* '''List_Attributes''': Find all names that have a non-empty value. |
|||
== Properties == |
|||
U-forms have the following properties: |
|||
* A '''UUID''' is defined as an array of bytes that is intended to be unique in the Universe. |
|||
Note that these are not limited to the standards for [[UUID|ISO, Microsoft, or DCE UUIDs]] though those are examples of acceptable sources of UUIDs. |
|||
* Attribute names are [[case sensitivity|case-folded]] and [[unicode normalization|normalized strings]] of [[Unicode]] characters |
|||
* Values are arbitrary-length arrays of bytes ([[Binary Large Object|BLOBs]], though not necessary "large") |
|||
* Each attribute has only one value (though the bytes may be interpreted to represent a vector of data) |
|||
* The number of attribute-value pairs is arbitrary and extensible at any time |
|||
* The attribute-value pairs are treated as a set (i.e., they are unordered) |
|||
== Copying vs Replication == |
|||
An important characteristic of u-forms, of significance to [[distributed_database|distributed database systems]], is that they support a clear distinction between copying and replication of data objects. Copying a u-form involves the creation of a new u-form (i.e., one with a different UUID), but with all attribute-value pairs identical to those of the original u-form. Replicating a u-form involves creating a new instance of the u-form with the same UUID as the original. Note that in a distributed system, two instances of the same u-form may be inconsistent (i.e., they may contain different attribute-value pairs. However, the fact that they have the same UUID means that they are intended to eventually be identical. |
|||
== History == |
|||
U-forms were developed at [[MAYA Design]] as part of the [[Visage_(computer software)|Visage Information Visualization System]], a joint project of MAYA and [[Carnegie_Mellon_University|Carnegie Mellon University]] funded by [[DARPA]] and [[United States Army Research Laboratory|The Army Research Laboratory]]. The name "u-form" derives from the term "e-form", a hypothetical "electronic form" proposed by Michael Dertouzos in his 1997 book "What Will Be" |
|||
<ref> |
|||
{{cite book |
|||
|title = What Will Be: How the World of Information Will Change Our Lives |
|||
|last = Dertouzos |
|||
|first = Michael L. |
|||
|year = 1997 |
|||
|publisher = HarperOne |
|||
|isbn = 0062514792 |
|||
|pages = 85-87 |
|||
|ref=Der97 |
|||
}} |
|||
</ref>. In addition to their continuing use in Visage |
|||
<ref> |
|||
{{cite journal |
|||
| author = Michael Higgins , Peter Lucas , Jeffrey Senn |
|||
| date = October 24-29, 1999 |
|||
| title = VisageWeb: Visualizing WWW Data in Visage |
|||
| journal = Proceedings of the 1999 IEEE Symposium on Information Visualization |
|||
| ref=Hig99 |
|||
}} |
|||
</ref><ref> |
|||
{{cite journal |
|||
| author = S. F. Roth , P. Lucas , J. A. Senn , C. C. Gomberg , M. B. Burks , P. J. Stroffolino , A. J. Kolojechick , C. Dunmire |
|||
| date = October 28-29, 1996 |
|||
| title = Visage: a user interface environment for exploring information |
|||
| journal = Proceedings of the 1996 IEEE Symposium on Information Visualization (INFOVIS '96) |
|||
| ref=Roth96 |
|||
}} |
|||
</ref>, they have been used as the basis of a number of significant research |
|||
<ref> |
|||
{{cite journal |
|||
| author = Ionescu, M.; Krebs, A. M. and Marsic, I. |
|||
| date = 2002 |
|||
| title = Dynamic content and offline collaboration in synchronous groupware |
|||
| journal = Paper presented at the Proceedings of the Collaborative Technologies Symposium (CTS 2002) San Antonio, TX |
|||
| ref=Ionescu02 |
|||
}} |
|||
</ref><ref> |
|||
{{cite journal |
|||
| author = I. Marsic |
|||
| date = June 1999 |
|||
| title = DISCIPLE: A Framework for Multimodal Col- laboration in Heterogeneous Environments |
|||
| journal = ACM Comp. Surveys |
|||
| volume = 31 |
|||
| series = 2 |
|||
| url = http://www.google.com/url?sa=t&source=web&cd=8&ved=0CFMQFjAH&url=http%3A%2F%2Fwww.computer.org%2Fcomp%2Fproceedings%2Fhicss%2F2003%2F1874%2F01%2F187410046a.pdf&ei=fLJ3TcOKH7GE0QGKw6TaBg&usg=AFQjCNH-ZCQ3fGXrk527mQC_LSBTN-5MhQ&sig2=-yxBfPh1LDjVbVvAnc5eFw |
|||
| ref=Marsic99 |
|||
}} |
|||
</ref><ref> |
|||
{{cite journal |
|||
| author = Ivan Marsic |
|||
| date = July August 2001 |
|||
| title = Adaptive Collaboration for Wired and Wireless Platforms |
|||
| journal = IEEE INTERNET COMPUTING |
|||
| pages = 26-35 |
|||
| url = http://www.google.com/url?sa=t&source=web&cd=1&sqi=2&ved=0CBYQFjAA&url=http%3A%2F%2Fciteseerx.ist.psu.edu%2Fviewdoc%2Fdownload%3Fdoi%3D10.1.1.23.7523%26rep%3Drep1%26type%3Dpdf&rct=j&q=hicss-36.pdf%20uform&ei=37N3TdqNGsyE0QHTxOXZBg&usg=AFQjCNGIMDeB6s0cMInChQ1EwQV3fzJuVA&sig2=fgSP3r73S2wEARpR-A4Piw |
|||
| ref=Marsic01 |
|||
}} |
|||
</ref><ref> |
|||
{{cite book |
|||
|title = INTERFACE HETEROGENEITY AND GROUP INTERACTION |
|||
|last = DOROHONCEANU |
|||
|first = BOGDAN |
|||
|year = 2004 |
|||
|publisher = Dissertation submitted to the Graduate School—New Brunswick Rutgers, The State University of New Jersey |
|||
|url = http://home.comcast.net/~bogdan.cv/ARC/dissertation.pdf |
|||
| ref=Dor04 |
|||
}} |
|||
</ref> |
|||
<ref> |
|||
{{cite web |
|||
|title=The Civium World Model: Spatial and Semantic Issues in Pervasive Computing |
|||
|author=Dominic Widdows, Peter Lucas, David Holstius, Michael Higgins |
|||
|publisher=Tech Report MAYA-07013 |
|||
|date=June 15, 2007 |
|||
|url=http://www.puttypeg.net/papers/civium-world-model.pdf |
|||
}} |
|||
</ref> and large-scale production systems, most notably the US Army's [[Command_Post_of_the_Future|Command Post of the Future]]. |
|||
== References == |
|||
{{reflist}} |
|||
== External Links == |
|||
* http://www.maya.com/portfolio/maya-universal-database |
|||
* http://www.bio-itworld.com/issues/2006/july-aug/infocommons/ |
|||
* http://www.asis.org/Bulletin/Jun-07/Bulletin_JunJul07.pdf |
|||
* http://www.biotech-online.com/fileadmin/artimg/the-universal-genetics-database_-information-sharing-in-genetics-and-beyond.pdf |
|||
* http://books.google.com/books?id=oDYEAAAAMBAJ&lpg=PA20&ots=g68O6IxyH6&dq=%22u-form%22%20maya&pg=PA20#v=onepage&q=%22u-form%22%20mayau-form&f=false |