Hi Seref,
Quite some discussion you already had on this topic last year. The
examples are a bit hard to grasp because of their complexity in size.
Although they are not really that extremely complex but perhaps the
problems should be discussed with the least complex examples as possible.
I would think it more understandable if it were explicitely described in
the API documentation that all result data is generally encoded in JSON
(with a link/reference to the corresponding reference model page). But
that wouldn't be sufficient. The description of the encoding concerns
not only how a single element is encoded but even more how collections
are encoded. Those collections are not ITEM_LISTs or any other part of
the reference model of openEHR because they are formed at the moment the
query is executed. When in the example from the API the "uid"-member of
"c" is assumed to be of the type ITEM_LIST (or any other collection
type) and the member "value" of "uid" were a primitive, the requested
column "c/uid/value" represents a collections although the "value"s
themselves are primitves. This can't be handled with a generic
object-serialization mechanism. The only object containing all desired
"value"s is the parent "c" object. This could be generically serialized,
but it isn't requested in the query. So there has to be an iteration
over all "value"s,which can themselves be serialized, but all their
resulting JSON-Strings would have to be concatenated (externally from
the serializing mechanisms) and written to the same result cell. Or,
when no concatenation is desired, some solution with something like a
Cartesian product would be needed.
How do the commercial implementations of AQL like the software from
Marand handle this stuff ?
Greetings
Georg
--
---------------------------------------------------------------------
Dipl.-Inf. Georg Fette Raum: B009
Universität Würzburg Tel.: +49-(0)931-31-85516
Am Hubland Fax.: +49-(0)931-31-86732
97074 Würzburg mail: [email protected]
---------------------------------------------------------------------
_______________________________________________
openEHR-technical mailing list
[email protected]
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org