One thing I would rather see is these things defined in terms of their oBIX constructs, instead of the xsd types. Maybe this is what 1) is about, but it would
seem more self consistent if, for example, the ‘name’ attribute were an obix:str, instead of an xs:string. Even though obix:str maps to an xs:string, the name is really an obix:str and the fact that the two are the same is sort of a coincidence of the way
we defined obix:str. Is it somehow invalid UML to have it be an obix:str instead of xs:string? I’m not an expert at UML.
I can easily embed this into the doc once we agree on whether this is ok.
From: email@example.com [mailto:firstname.lastname@example.org]
On Behalf Of Chris Bogen
Sent: Tuesday, May 07, 2013 4:02 PM
Subject: [obix] Groups - oBIXfigure1UML.png uploaded
I uploaded a draft version of a new Figure 1 for the next working draft. I can arrange it to look better in the final version, but wanted to get feedback first.
My goal was to represent the object model in UML class diagram notation, but with a little more detail. As it currently exists Figure 1 is technically a very simple UML class diagram. Major changes:
1) I added namespace/package prefixes to distinguish between oBIX and native or xsd mapped types. As it is the diagram is ambiguous.
2) Represented "val" as a proper parameterized class with type binding relations from subclasses.
3) Added the "status" enumeration for clarification.
There are some issues that I found while making the diagram, such as...
a) why does int use a uri for units while date uses a string?
b) In facets there is discussion about using tz in abstime, date, or time, but in the current Figure 1, tz is not an attribute of those classes.
c) related to b, why doesn't reltime have units?
-- Chris Bogen