Subject: [VCARDDAV] OO/UML etc representation of vCard data model

From: Dan Brickley <[email-masked]>
Date: Fri, 06 Jun 2008 12:51:25 +0100

Is there anywhere a good (comprehensive; official; or at least 
plausible) representation of vCard's core information model, somehow 
separated from the textual encoding detail of it's syntax? (eg. UML). 
This would be really helpful for mapping such data into other 
representations.

cheers,

Dan

--
http://danbri.org/
_______________________________________________
VCARDDAV mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/vcarddav

---

From: "Javier Godoy" <[email-masked]>
Date: Fri, 6 Jun 2008 14:12:44 -0300

> This would be really helpful for mapping such data into other

A long long long time ago I did a very näive one for vCard version 3.0 (I've 
just uploaded it to: http://rjgodoy.site.io/vCard-UML-model.png )

It is by no means official and it only provides an overview of the 
properties and parameter types (though associations between parameters and 
properties are not displayed).

I'm not particularly enthusiast about it, since it was one of the first UML 
models I did (if it is not the very first one), but it could be convenient 
until someone provides something better.

My intention when I made it was only to elucidate similarities between 
properties (hence, datatypes are not described explicitly, but you can 
expect that siblings will allow similar datatypes and/or they will share 
some feature). For instance, all properties that allow an x-param inherit 
from WithXParam, and those allowing a text-param (as defined in ABNF) 
inherits from WithTextParams. I think this feature (questionable, and even 
wrong, from a semantic perspective) may be useful, because similar 
properties should be represented in the same way in the syntax of your 
choice.

Note: multiplicities are not stated because they were not addressed in RFC 
2426. In most cases they should be considered 0..n (IIRC, vCard 3.0 does not 
forbid multiple UID properties, etc.). Some of this issues were solved in 
vCard 4.0 proposal (while other multiplicities remain unspecified, and I 
think they should be understood as 0..n)

I hope it can help (and I'm sorry for wasting your time if it cannot ;-)

Best Regards

Javier