Introduce entity:relatedTo mixin.
[gpl/argeo-suite.git] / org.argeo.entity.api / src / org / argeo / entity / entity.cnd
index 1ef20a7604a670f553b33148225bc87e4ed4a19a..0b3127b305115cf16c82412b1f1b23df15825bdb 100644 (file)
@@ -1,32 +1,36 @@
-<ldap = 'http://www.argeo.org/ns/ldap'>
-<entity = 'http://www.argeo.org/ns/entity'>
-
-// standard namespaces
+// Standard namespaces
 <xsd = "http://www.w3.org/2001/XMLSchema">
 <h = "http://www.w3.org/1999/xhtml">
-<xforms = "http://www.w3.org/2002/xforms">
-
 // see https://www.w3.org/2003/01/geo/
-<geo = 'http://www.w3.org/2003/01/geo/wgs84_pos#'>
+<geo = "http://www.w3.org/2003/01/geo/wgs84_pos#">
+<svg = "http://www.w3.org/2000/svg">
 
+<ldap = "http://www.argeo.org/ns/ldap">
+<entity = 'http://www.argeo.org/ns/entity'>
 
 [entity:entity] > mix:created, mix:referenceable
 mixin
-//- entity:uid (String) m // an implementation dependent UID for each entity
-//- entity:type (String) // the type of this entity
+
+[entity:local] > entity:entity
+mixin
+- entity:type (String) m
+
+[entity:relatedTo]
+mixin
++ entity:relatedTo (nt:address) *
 
 //
 // ENTITY DEFINITION
 //
-[entity:definition] > entity:composite, mix:created, mix:referenceable
+//[entity:definition] > entity:composite, mix:created, mix:lastModified, mix:referenceable
 //- entity:type (String) multiple
 
-[entity:part]
+//[entity:part]
 
-[entity:reference]
+//[entity:reference]
 
-[entity:composite]
-orderable
+//[entity:composite]
+//orderable
 //+ * (entity:part)
 //+ * (entity:reference)
 //+ * (entity:composite)
@@ -34,38 +38,41 @@ orderable
 //
 // TYPOLOGY
 //
+[entity:typologies]
++ * (entity:terms) = entity:terms
+
 [entity:term]
 orderable
-+ * (entity:term) *
+- name (NAME) m
+- * (*)
++ term (entity:term) = entity:term *
 
-[entity:typology] > mix:referenceable, mix:created
+[entity:terms] > mix:referenceable
 orderable
-+ * (entity:term) *
++ term (entity:term) = entity:term *
 
 //
-// XML
+// FORM
 //
-[entity:xmlvalue] > mix:language
-- *
-+ jcr:xmltext (entity:xmltext)
+[entity:form]
+mixin
 
-[entity:xmltext]
- - jcr:xmlcharacters (String) mandatory
+[entity:formSubmission]
+mixin
+
+[entity:formSet] > mix:title
+mixin
 
 //
-// HTML
+// GRAPHICS
 //
-[h:head]
-+ h:title (entity:xmlvalue)
-+ h:base (entity:xmlvalue)
-+ h:style (entity:xmlvalue) multiple
-+ h:meta (entity:xmlvalue) multiple
-+ h:link (entity:xmlvalue) multiple
-+ h:script (entity:xmlvalue) multiple
-
-[h:html]
-+ h:head (h:head)
-+ h:body (nt:unstructured)
+[entity:box]
+mixin
+- svg:width (DOUBLE)
+- svg:height (DOUBLE)
+- svg:length (DOUBLE)
+- svg:unit (STRING)
+- svg:dur (DOUBLE)
 
 // LDAP-LIKE ENTITIES
 // A real person
@@ -73,3 +80,17 @@ orderable
 mixin
 - ldap:sn (String)
 - ldap:givenName (String)
+- ldap:mail (String) *
+
+[entity:user] > entity:person
+mixin
+- ldap:distinguishedName (String)
+- ldap:uid (String)
+
+// GEOGRAPHY
+[entity:geopoint]
+mixin
+- geo:long (DOUBLE)
+- geo:lat (DOUBLE)
+- geo:alt (DOUBLE)
+