[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[COAS-List] Proposed ObservationData IDL



COAS Submitters and Supporters,

Here is the proposed IDL changes for ObservationData.  I have not tried
to compile it yet so there may be some typos.  You will have to comment
out the old struct for ObservationData and put the following in.  You
will have to move ObservationQualifier, TimeStamp and TimeSpan up before
they are used.

I kept the number of ObservationData types to a minimum (3) for COAS
1.0.  They still give the biggest bang for the buck and don't require
clients to expect very many types that could come back.  The first two
are just generic Composite and Atomic types.  The SimpleObservationData
may be a commonly used type.  There may be others that are more usefull
but this could get the discussion going.

As you will see I did not need to change the Information Model - just
the IDL mapping.  The various structures are not bound statically into
the operations which gives flexibility for the service to adapt to
changes in the type definition.

Regards,

Tim


        typedef any ObservationData;
        // This is the type bound to the operations.
        // COAS 1.0 ObservationData can only be one of the 3 structs
defined below.


        struct CompositeObservationData {
                QualifiedCodeStr code;
                sequence<ObservationData> composite;
                sequence<ObservationQualifier> qualifiers;
        };

        struct AtomicObservationData {
                QualifiedCodeStr code;
                any value;
                sequence<ObservationQualifier> qualifiers;
        };

        struct SimpleObservationData {
                QualifiedCodeStr code;
                any value;
                ObservedSubjectId observed_subject;
                TimeSpan time_span;
        };