Hi Pablo, The Ocean Template Desiner is now freely available from https://wiki.oceaninformatics.com/confluence/display/TTL/Template+Designer+R eleases.
The pass_through view constraint is not a GUI directive, it is a data view directive which is consistent with archetypes/templates being definitions of data structures. Just as form generators may use this data definition to lay out a form and bind to a data instance, it may use this pass_through view constraint to collapse a redundant grouping on a screen. Similarly an XML schema or class generator may use this same constraint to collapse a redundant element grouping. This ensures that screen layout and binding are consistent with the XML schema or class it will bind to. I historically was of the opinion that GUI only directives such as control type or position should be provided separately as these a really implementation specific and have minimal use in shared artefacts such as archetypes and templates. Having said that the view constraint could easily be used for this purpose if desired. The XSD for the view constraint is as follows: <xs:complexType name="T_VIEW"> <xs:sequence> <xs:element name="constraints" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="items" maxOccurs="unbounded" > <xs:complexType> <xs:sequence> <xs:element name="value" type="xs:anySimpleType"/> </xs:sequence> <xs:attribute name="id" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="path" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> An example use of this is as follows: <template xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.openehr.org/v1"> . <view> <constraints path="/content[openEHR-EHR-OBSERVATION.lab_test.v1]/data[at0001]/events[at00 02]/data[at0003]/items[openEHR-EHR-CLUSTER.specimen.v1]/items[at0046]"> <items id="pass_through"> <value>true</value> </items> </constraints> </view> </template> Heath From: openehr-technical-boun...@openehr.org [mailto:openehr-technical-bounces at openehr.org] On Behalf Of pablo pazos Sent: Thursday, 12 January 2012 9:24 AM To: openehr technical Subject: RE: pass_through attribute in ADL 1.5 Hi Heath, Hi Paplo, Your suggestion here is too oriented to GUI uses cases. As Tom indicated, pass_through is intended to support other data oriented contexts such as flattening schema and class hierarchies, this is why is was generalised from hide-on-form as used in the template designer. In that case, I think we should separate the uses of the directive. IMO is a little anoying to use the same directive to do semantic processing of the structure and to do GUI generation/customization. If you look at the Operational Template exported in the Template Designer there is an AOM extension of view-constraints which structurally are the same as annotations where there is a hash of paths of hash of constraint name. This supports the pass_through constraint and any other constraints of this class. I'm afraid I could not see what you mention, I don't have a licence for the TD. The term view was adopted because it is used in both GUI and data oriented contexts. I can provide the XML schema for this AOM extension used by the template designer if people are interested. It would be nice to see the schema and some documentation about the structure and rationale behind it if you have some (just to understand the XML structure). Cheers, Pablo. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.openehr.org/mailman/private/openehr-technical_lists.openehr.org/attachments/20120113/487e0f28/attachment.html>