1  



package
 hudsonfog.voc.system;

2  



3  



import
 com.fogx.webdav.DavResource;

4  



import
 com.fogx.webdav.DavClass;

5  



import
 com.fogx.webdav.DavBean;

6  



import
 com.fogx.webdav.DavProperty;

7  



import

static
 com.fogx.webdav.DavProperty.*;

8  



import
 com.fogx.webdav.packages.DavBeanPackage;

9  



import
 com.fogx.webdav.util.DavResourceSupport;

10 



import
 com.fogx.webdav.util.UrlUtil;

11 



import
 java.util.Date;

12 



import
 java.util.Map;

13 



import
 java.util.HashMap;

14 



import
 java.util.List;

15 



import
 java.util.Collections;

16 



import
 java.util.Arrays;

17 



18 



import

hudsonfog.voc.system.primitiveTypes
.*;

19 



import

hudsonfog.voc.system.identity
.*;

20 



import

hudsonfog.voc.system.XMLSchema
.*;

21 



22 



import

hudsonfog.voc.system.fog
.*;

23 



24 



25 



public

abstract

class
 identity {

26 



27 



public

static
 enum Title {

28 


    @_label(
"Mr."
) Mr_, @_label(
"Ms."
) Ms_, Miss, @_label(
"Mrs."
) Mrs_, @_label(
"Dr."
) Dr_;

29 


  }

30 



31 



public

static
 enum Sex {

32 


    Male, Female;

33 


  }

34 



35 



public

static

interface
 PersonIdentifier {

36 


         @_maxSize(
40
)

37 


         @_displayNameElm

38 


         @_alphabeticIndex

39 


      @k 
public
 String                        lastName = 
null
;

40 


         @_maxSize(
40
)

41 


         @_displayNameElm

42 


         @_alphabeticIndex

43 


      @k 
public
 String                        firstName = 
null
;

44 


         @_maxSize(
40
)

45 



public
 String                        middleName = 
null
;

46 


         @_maxSize(
40
)

47 


         @_displayNameShort

48 


         @_onCreate

49 



public
 String                        nickname = writeJS(
"(nickname != null) ? nickname : (firstName && firstName.length != 0 ? firstName.charAt(0) : '') + (middleName && middleName.length != 0 ? middleName.charAt(0) : '') + (lastName && lastName.length != 0 ? lastName.charAt(0) : '') "
);

50 



public
 Title                         personalTitle = 
null
;

51 


         @_maxSize(
3
)

52 



public
 String                        suffix = 
null
;

53 



public
 Sex                           sex = 
null
;

54 


  }

55 


}

56