MMM-Useful-Types DEFINITIONS IMPLICIT TAGS ::= BEGIN END ASN1-Builtin-Types DEFINITIONS IMPLICIT TAGS ::= BEGIN END MMM-BuiltIn-Types DEFINITIONS IMPLICIT TAGS ::= BEGIN OctetString ::= OCTET-STRING BitString ::= BIT-STRING Null ::= NULL NumericId ::= ULong2 Ncid ::= NumericId Cid ::= BasicString(SIZE( 1..30 )) SInteger ::= LInteger( WITH COMPONENTS { integer}) LLong ::= LInteger LInteger ::= CHOICE { integer Long, coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({IntegerCode}) PRESENT }), text BasicString } DecimalX ::= BasicString SDecimal ::= LDecimal( WITH COMPONENTS { decimal}) LDecimal ::= CHOICE { decimal DecimalX, coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DecimalCode}) PRESENT }), text BasicString } Range ::= DecimalRange LRange ::= LDecimalRange DecimalRange ::= SET { lower DecimalX, upper DecimalX } IntegerRange ::= SET { lower Long, upper Long } SDecimalRange ::= LDecimalRange( WITH COMPONENTS { range}) SIntegerRange ::= LIntegerRange( WITH COMPONENTS { range}) LDecimalRange ::= CHOICE { range DecimalRange, coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({RangeCode}) PRESENT }), decimal DecimalX, text BasicString } LIntegerRange ::= CHOICE { range IntegerRange, coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({RangeCode}) PRESENT }), decimal DecimalX, text BasicString } Titer ::= SET { lower DecimalX, upper DecimalX } STiter ::= LTiter( WITH COMPONENTS { titer}) LTiter ::= CHOICE { titer Titer, coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({TiterCode}) PRESENT }), text BasicString } XDateTime ::= ULong2 GDateTime ::= XDateTime DateTime ::= GeneralizedTime SDateTime ::= LDateTime( WITH COMPONENTS { dateTime}) LDateTime ::= CHOICE { dateTime DateTime, coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DateTimeCode}) PRESENT }), text BasicString } XCoded ::= SET { ncid Ncid OPTIONAL, text BasicString OPTIONAL, relSFormNumId RelSFormNumId OPTIONAL } RelSFormNumId ::= ULong2 CODED ::= XCoded( WITH COMPONENTS { ncid}) SCoded ::= CODED CODEDWOSFORM ::= XCoded( WITH COMPONENTS { ncid, relSFormNumId OPTIONAL }) CODEDWRSFORM ::= XCoded( WITH COMPONENTS { ncid, relSFormNumId}) LCODED ::= XCoded( WITH COMPONENTS { ncid OPTIONAL , text OPTIONAL }) LCODEDWOSFORM ::= XCoded( WITH COMPONENTS { ncid OPTIONAL , text OPTIONAL , relSFormNumId OPTIONAL }) LCODEDWRSFORM ::= XCoded( WITH COMPONENTS { ncid OPTIONAL , text OPTIONAL , relSFormNumId}) BasicString ::= VisibleString Image ::= YetToBeDesigned Barcode ::= YetToBeDesigned Icon ::= YetToBeDesigned Sound ::= YetToBeDesigned Video ::= YetToBeDesigned YetToBeDesigned ::= Null END DSql DEFINITIONS IMPLICIT TAGS ::= BEGIN DSqlTable ::= SET { sqlId CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SQLCString}) PRESENT }), arguments DSqlArguments OPTIONAL, sqlCString BasicString OPTIONAL, tableFlags DSqlTableFlags OPTIONAL, error DSqlError OPTIONAL, rows DSqlRows OPTIONAL } DSqlArguments ::= SEQUENCE OF BasicString DSqlTableFlags ::= SET { moreRows CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({YesNo}) PRESENT }) OPTIONAL, rowsReturned ULong OPTIONAL } DSqlRows ::= SEQUENCE OF DSqlRow DSqlRow ::= SET { columns DSqlColumns OPTIONAL } DSqlError ::= SET { errorCode CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DSqlErrors}) PRESENT }) OPTIONAL, errorText BasicString OPTIONAL } DSqlColumns ::= SEQUENCE OF DSqlColumn DSqlColumn ::= SET { name BasicString OPTIONAL, value DSqlValue OPTIONAL } DSqlValue ::= CHOICE { textString BasicString, binaryString OctetString, date DateTime } END