-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Okay, we discussed properties a bit on IRC, and this is the tentative design we came up with.

First, the property datatype is removed from the property, and becomes part of the VOS types. We add the restriction that once the datatype is set, it can't really be changed. This makes things a lot easier.

So instead of a single generic "property:property" type (I never liked that redundancy anyways) we have a set of well defined types in the property namespace. Here's the ones I'm thinking of, based on types defined by XML schemas.

property:byte    (8 bit integer)
property:ubyte property:short (16 bit integer)
property:ushort
property:int     (32 bit integer)
property:uint
property:long    (64 bit integer)
property:ulong
property:float   (32 bits IEEE float)
property:double  (64 bits IEEE double)
property:boolean

For each above numerical type, a vector version is also defined, so:

property:vector.byte
property:vector.ubyte
property:vector.int
property:vector.float
property:vector.boolean
etc

Some more useful data types:

property:date    (UTC timestamp with accuracy of one second, format TBD)
property:url     (enforces property-formatted URL)
property:text.ascii
property:text.utf-8  (not much UTF-8 handling inside of VOS yet though)
property:string  (for storing "anything else" -- do actually want this?)

Also we would want to store file types (based on MIME types) in here, such as

property:image.png
property:image.jpeg
property:model.md2
property:model.3ds

I should mention that if we wanted, the property code could provide a reader for, say, png data, so that you could then access the image data (perhaps even with an abstract Image2D* or Model3D* interface). Just a thought.

[   Peter Amstutz   ][ [EMAIL PROTECTED] ][ [EMAIL PROTECTED]  ]
[Lead Programmer][Interreality Project][Virtual Reality for the Internet]
[ VOS: Next Generation Internet Communication][ http://interreality.org ]
[ http://interreality.org/~tetron ][ pgpkey:  pgpkeys.mit.edu  18C21DF7 ]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFETZnlaeHUyhjCHfcRAtgGAJ4qnRjYXGJELLGDALm5eqoojrkuzACcC5ZW
TE/636d076xHTHJ735lE+RM=
=WYUf
-----END PGP SIGNATURE-----


_______________________________________________
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d

Reply via email to