]> git.argeo.org Git - gpl/argeo-suite.git/blob - api/entity.cnd
Prepare next development cycle
[gpl/argeo-suite.git] / api / entity.cnd
1 // Standard namespaces
2 <xsd = "http://www.w3.org/2001/XMLSchema">
3 <h = "http://www.w3.org/1999/xhtml">
4 // see https://www.w3.org/2003/01/geo/
5 <geo = "http://www.w3.org/2003/01/geo/wgs84_pos#">
6 <svg = "http://www.w3.org/2000/svg">
7
8 <ldap = "http://www.argeo.org/ns/ldap">
9 <entity = 'http://www.argeo.org/ns/entity'>
10
11 [entity:entity] > mix:created, mix:referenceable
12 mixin
13
14 [entity:local] > entity:entity
15 mixin
16 - entity:type (String) m
17
18 [entity:relatedTo]
19 mixin
20 + entity:relatedTo (nt:address) *
21
22 //
23 // ENTITY DEFINITION
24 //
25 //[entity:definition] > entity:composite, mix:created, mix:lastModified, mix:referenceable
26 //- entity:type (String) multiple
27
28 //[entity:part]
29
30 //[entity:reference]
31
32 //[entity:composite]
33 //orderable
34 //+ * (entity:part)
35 //+ * (entity:reference)
36 //+ * (entity:composite)
37
38 [entity:query] > nt:query, mix:referenceable
39
40 [entity:querySet]
41 + * (entity:query) = entity:query *
42
43 //
44 // STRUCTURE
45 //
46 [entity:space]
47 mixin
48
49 [entity:document]
50 mixin
51
52 //
53 // TYPOLOGY
54 //
55 [entity:typologies]
56 + * (entity:terms) = entity:terms
57
58 [entity:term]
59 orderable
60 - name (NAME)
61 - * (*)
62 + term (entity:term) = entity:term *
63
64 [entity:terms] > mix:referenceable
65 orderable
66 + term (entity:term) = entity:term *
67
68 //
69 // FORM
70 //
71 [entity:form]
72 mixin
73 + queries (entity:querySet) = entity:querySet
74
75 [entity:formSubmission]
76 mixin
77
78 [entity:formSet] > mix:title
79 mixin
80
81 //
82 // GRAPHICS
83 //
84 [entity:box]
85 mixin
86 - svg:width (DOUBLE)
87 - svg:height (DOUBLE)
88 - svg:length (DOUBLE)
89 - svg:unit (STRING)
90 - svg:dur (DOUBLE)
91
92 // LDAP-LIKE ENTITIES
93 // A real person
94 [entity:person] > entity:entity
95 mixin
96 - ldap:sn (String)
97 - ldap:givenName (String)
98 - ldap:mail (String) *
99
100 [entity:user] > entity:person
101 mixin
102 - ldap:distinguishedName (String)
103 - ldap:uid (String)
104
105 // GEOGRAPHY
106 [entity:geopoint]
107 mixin
108 - geo:long (DOUBLE)
109 - geo:lat (DOUBLE)
110 - geo:alt (DOUBLE)
111
112 [entity:bearing]
113 mixin
114 - svg:direction (DOUBLE)