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 EMH DEFINITIONS IMPLICIT TAGS ::= BEGIN Errors ::= SET OF ErMessage ErMessage ::= SET { sType BasicString, iNumber Long, sTitle BasicString OPTIONAL, sUserMessage BasicString OPTIONAL, sSystemMessage BasicString OPTIONAL, iButton Long OPTIONAL, iIcon Long OPTIONAL, iModality Long OPTIONAL, iRouting Long OPTIONAL, sHelpRefer BasicString OPTIONAL, sReporterId BasicString OPTIONAL, sReporterSubId BasicString OPTIONAL, sVersion BasicString OPTIONAL, sImess InsertMessage OPTIONAL, unitNumber INTEGER OPTIONAL, linkItID INTEGER OPTIONAL, transactionId BasicString OPTIONAL, eventId Long OPTIONAL, medRecNumber BasicString OPTIONAL, medRecFacilty ULong2 OPTIONAL, encNumber BasicString OPTIONAL, encFacility ULong2 OPTIONAL, placerRefNum BasicString OPTIONAL, placerSysId ULong2 OPTIONAL, fillerRefNum BasicString OPTIONAL, fillerSysId ULong2 OPTIONAL, lastOneHere BasicString OPTIONAL } InsertMessage ::= SET OF SinsMess SinsMess ::= SET { sMess BasicString, iDex Long } END MMM-Types DEFINITIONS IMPLICIT TAGS ::= BEGIN BER-String ::= OctetString Boolean ::= CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({YesNo}) PRESENT }) }) }) }) ValueX ::= CHOICE { sDecimal SDecimal, sInteger SInteger, sDecimalRange SDecimalRange, sIntegerRange SIntegerRange, sDateTime SDateTime, basicString BasicString, decimal DecimalX, long1 Long, uLong ULong, long2 Long2, uLong2 ULong2, dateTime GDateTime, coded CODED, codedWOSform CODEDWOSFORM, codedWRSform CODEDWRSFORM, multiMedia MultiMedia } NValue ::= ValueX( WITH COMPONENTS { basicString, decimal, long1, uLong, long2, uLong2, dateTime, coded, codedWOSform, codedWRSform, multiMedia}) Attribute ::= SET { value ValueX, negation CODEDWOSFORM( WITH COMPONENTS { ncid (1023) , relSFormNumId OPTIONAL }) OPTIONAL, numericOperator CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({NumericOperator}) PRESENT }) OPTIONAL, uncertainty CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Uncertainty}) PRESENT }) OPTIONAL, machineProbability MachineProbability OPTIONAL, userStatedProbability UserStatedProbability OPTIONAL, modifier CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AttributeModifier}) PRESENT }) OPTIONAL, units CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Units}) PRESENT }) OPTIONAL, stateOfBeingVerb CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({StateOfBeingVerb}) PRESENT }) OPTIONAL, actionVerb CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ActionVerb}) PRESENT }) OPTIONAL, precision Precision OPTIONAL } Precision ::= BasicString MachineProbability ::= Probability UserStatedProbability ::= Probability Probability ::= DecimalX(0..1) LAttribute ::= CHOICE { att Attribute( WITH COMPONENTS { ..., value ( NValue ) PRESENT }), decimalRange DecimalRangeSet, integerRange IntegerRangeSet, titer TiterSet, doc DocumentSegment, timeIntAtt DateTimeIntervalSet, mCodedAtt MCodedSequence, mCWOSformAtt MCodedWOSformSequence, mCWRSformAtt MCodedWRSformSequence, mLCodedAtt MLCodedSequence, mLCWOSformAtt MLCodedWOSformSequence, mLCWRSformAtt MLCodedWRSformSequence, sound Sound, errCoded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({LooseTypeErrorCode}) PRESENT }), errText BasicString, multimediaSequence MultimediaSequence, errBinary OctetString } CODEDATTRIBUTE ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { coded}) , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL }) }) MCodedSequence ::= SEQUENCE OF CODEDATTRIBUTE MCODEDATTRIBUTE ::= LAttribute( WITH COMPONENTS { mCodedAtt}) CODEDWOSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform}) , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL }) }) MCodedWOSformSequence ::= SEQUENCE OF CODEDWOSFORMATTRIBUTE MCODEDWOSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { mCWOSformAtt}) CODEDWRSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWRSform}) , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL }) }) MCodedWRSformSequence ::= SEQUENCE OF CODEDWRSFORMATTRIBUTE MCODEDWRSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { mCWRSformAtt}) LCODEDATTRIBUTE ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { coded}) , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL }) }) MLCodedSequence ::= SEQUENCE OF LCODEDATTRIBUTE MLCODEDATTRIBUTE ::= LAttribute( WITH COMPONENTS { errCoded, errText, mLCodedAtt}) LCODEDWOSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform}) , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL }) }) MLCodedWOSformSequence ::= SEQUENCE OF LCODEDWOSFORMATTRIBUTE MLCODEDWOSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { errCoded, errText, mLCWOSformAtt}) LCODEDWRSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWRSform}) , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL }) }) MLCodedWRSformSequence ::= SEQUENCE OF LCODEDWRSFORMATTRIBUTE MLCODEDWRSFORMATTRIBUTE ::= LAttribute( WITH COMPONENTS { errCoded, errText, mLCWRSformAtt}) BasicStringAtt ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { basicString}) }) }) LBasicStringAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { basicString}) }) }) DocumentAtt ::= LAttribute( WITH COMPONENTS { doc}) LDocumentAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, doc}) SoundAtt ::= LAttribute( WITH COMPONENTS { sound}) LSoundAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, sound}) DecimalAtt ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { decimal}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) SDecimalAttribute ::= Attribute( WITH COMPONENTS { value ( WITH COMPONENTS { sDecimal}) , numericOperator OPTIONAL , units OPTIONAL }) LDecimalAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { decimal}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) IntegerAtt ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { long1}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) SIntegerAttribute ::= Attribute( WITH COMPONENTS { value ( WITH COMPONENTS { sInteger}) , numericOperator OPTIONAL , units OPTIONAL }) LIntegerAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { long1}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) ULongAtt ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { uLong}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) LULongAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { uLong}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) Long2Att ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { long2}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) LLong2Att ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { long2}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) ULong2Att ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { uLong2}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) LULong2Att ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { uLong2}) , numericOperator OPTIONAL , units OPTIONAL , precision OPTIONAL }) }) TiterSet ::= SET { lower DecimalAtt, upper DecimalAtt } TiterAtt ::= LAttribute( WITH COMPONENTS { titer}) LTiterAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, titer}) DecimalRangeSet ::= SET { lower DecimalAtt, upper DecimalAtt } DecimalRangeAtt ::= LAttribute( WITH COMPONENTS { decimalRange}) LDecimalRangeAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, decimalRange}) SDecimalRangeAttribute ::= Attribute( WITH COMPONENTS { value ( WITH COMPONENTS { sDecimalRange}) , numericOperator OPTIONAL , units OPTIONAL }) IntegerRangeSet ::= SET { lower IntegerAtt, upper IntegerAtt } IntegerRangeAtt ::= LAttribute( WITH COMPONENTS { integerRange}) LIntegerRangeAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, integerRange}) SIntegerRangeAttribute ::= Attribute( WITH COMPONENTS { value ( WITH COMPONENTS { sIntegerRange}) , numericOperator OPTIONAL , units OPTIONAL }) Time ::= Attribute( WITH COMPONENTS { value ( WITH COMPONENTS { sInteger}) , units ( WITH COMPONENTS { ..., ncid ({TimeUnits}) PRESENT }) }) TimeAtt ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { long1}) , units ( WITH COMPONENTS { ..., ncid ({TimeUnits}) PRESENT }) , numericOperator OPTIONAL , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL , precision OPTIONAL }) }) STimeAttribute ::= Attribute( WITH COMPONENTS { value ( WITH COMPONENTS { sInteger}) , units ( WITH COMPONENTS { ..., ncid ({TimeUnits}) PRESENT }) , numericOperator OPTIONAL }) LTime ::= CHOICE { time Time, timeCode CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({TimeCode}) PRESENT }), text BasicString } LTimeAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { long1}) , numericOperator OPTIONAL , units ( WITH COMPONENTS { ..., ncid ({TimeUnits}) PRESENT }) OPTIONAL , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL , precision OPTIONAL }) }) DateTimeAtt ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { dateTime}) , numericOperator OPTIONAL , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL }) }) LDateTimeAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { dateTime}) , numericOperator OPTIONAL , negation OPTIONAL , uncertainty OPTIONAL , modifier OPTIONAL , precision OPTIONAL }) }) SDateTimeAttribute ::= Attribute( WITH COMPONENTS { value ( WITH COMPONENTS { sDateTime}) , negation, numericOperator, uncertainty, machineProbability, userStatedProbability, modifier}) DateTimeIntervalSet ::= SET { startTime DateTimeAtt, endTime DateTimeAtt } DateTimeIntervalAtt ::= LAttribute( WITH COMPONENTS { timeIntAtt}) LDateTimeIntervalAtt ::= LAttribute( WITH COMPONENTS { errCoded, errText, timeIntAtt}) TimeInterval ::= LTimeInterval( WITH COMPONENTS { lStartTime ( WITH COMPONENTS { dateTime}) , lEndTime ( WITH COMPONENTS { dateTime}) }) LTimeInterval ::= SET { lStartTime LDateTime, lEndTime LDateTime } StringId ::= ULong2 StringKey ::= SET { stringId StringId, editVersion EditVersion } Version ::= ULong2 EditVersion ::= ULong ObjectPointers ::= SET OF ObjectPointer ObjectPointer ::= CHOICE { intObjPtr InternalObjectPointer, extObjPtr ExternalObjectPointer } ExternalObjectPointer ::= SET { objectClass CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({ObjectClass}) PRESENT }) }) }) }) } InternalObjectPointer ::= SET { stringKey StringKey, linkStrength CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({LinkStrength}) PRESENT }) }) }) }) OPTIONAL, remoteStringType CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({StringType}) PRESENT }) }) }) }) OPTIONAL, localElements ElementPaths OPTIONAL, remoteElements ElementPaths OPTIONAL } ElementPaths ::= SEQUENCE OF ElementPath ElementPath ::= SEQUENCE OF ElementId ElementId ::= CHOICE { elementId Ncid, elementIndex ULong } Versions ::= SET OF Version Cids ::= SET OF Cid Ncids ::= SET OF Ncid Decimals ::= SET OF DecimalX Titers ::= SET OF Titer DecimalRanges ::= SET OF DecimalRange IntegerRanges ::= SET OF IntegerRange DateTimes ::= SET OF DateTime GDateTimes ::= SET OF GDateTime Barcodes ::= SET OF Barcode Images ::= SET OF Image Icons ::= SET OF Icon Sounds ::= SET OF Sound Videos ::= SET OF Video BasicStrings ::= SET OF BasicString StringTexts ::= SET OF StringText RtfTexts ::= SET OF RtfText SgmlTexts ::= SET OF SgmlText HtmlTexts ::= SET OF HtmlText PcTexts ::= SET OF PcText DocumentSegment ::= SET { html HtmlText, plain BasicString OPTIONAL, rtf RtfText OPTIONAL, sgml SgmlText OPTIONAL, pctext PcText OPTIONAL } LocationInfo ::= SET { physicalLocation PhysicalLocation OPTIONAL, terminalId LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({TerminalID}) PRESENT }) OPTIONAL } PhysicalLocation ::= CHOICE { room CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Room}) PRESENT }), bed CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Bed}) PRESENT }), nursingDivision CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({NursingDivision}) PRESENT }), serviceArea CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ServiceArea}) PRESENT }), buildingFloor CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({BuildingFloor}) PRESENT }), building CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Building}) PRESENT }), facility CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Facility}) PRESENT }) } Representation ::= CHOICE { barcode Barcode, image Image, icon Icon, sound Sound, video Video, basicString BasicString, doc DocumentSegment } Text ::= CHOICE { basicString BasicString, stringText StringText, formatted FormattedText, encodedForm EncodedForm } StringText ::= CHOICE { englishText BasicString, spanishText BasicString } FormattedText ::= CHOICE { sgmlText SgmlText, htmlText HtmlText, rtfText RtfText, pcText PcText } EncodedForm ::= BasicString RtfText ::= BasicString SgmlText ::= BasicString HtmlText ::= BasicString PcText ::= OctetString MultiMediaAtt ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { multiMedia}) }) }) LMultiMediaAtt ::= MultiMediaAttribute MultiMediaAttribute ::= LAttribute( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { multiMedia}) }) , errCoded, errText, errBinary}) MultiMedia ::= SET { mediaType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({MediaType}) PRESENT }) OPTIONAL, mediaSubType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({MediaSubType}) PRESENT }) OPTIONAL, mediaSubTypeVersion BasicString OPTIONAL, compressionScheme CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CompressionAlgorithm}) PRESENT }) OPTIONAL, compressedLength ULong2 OPTIONAL, uncompressedLength ULong2 OPTIONAL, parameterSet ParameterSet OPTIONAL, referencePointer UniqueReferenceId OPTIONAL, data OctetString OPTIONAL } ParameterSet ::= SET OF Parameter Parameter ::= SET { attribute CODED( WITH COMPONENTS { ncid ({CodedAttribute}) }), value ParameterValue } ParameterValue ::= NValue( WITH COMPONENTS { basicString, decimal, long1, uLong, long2, uLong2, dateTime, codedWOSform}) MultimediaSequence ::= SEQUENCE OF MultiMediaAttribute UniqueReferenceId ::= SET { refNum ReferenceNumber, system CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AssignedBySystem}) PRESENT }) OPTIONAL } ReferenceNumber ::= BasicString END MMM-PatGroupTrans DEFINITIONS IMPLICIT TAGS ::= BEGIN PatGroupTrans ::= SEQUENCE OF PatGroupAction PatGroupAction ::= SET { patGroupInfo PatGroupInfo, operation PatGroupOperation } PatGroupOperation ::= CHOICE { deleteOp Null, updateOp Null, insertOp Null, selectOp Null, loadPatGroupOp StringId } PatGroupInfo ::= SET { patGroupEntries PatGroupEntries, patGroupDefinitions PatGroupDefinitions } PatGroupEntries ::= SET OF PatGroupEntry PatGroupEntry ::= SET { patGroupId StringId, unitNumber Long, autoAddFlag Boolean, addTime GDateTime } PatGroupDefinitions ::= SET OF PatGroupDefinition PatGroupDefinition ::= SET { patGroupId StringId, name BasicString, owningUser CODED( WITH COMPONENTS { ncid ({User}) }), owningLogonName BasicString, modifyUser CODED( WITH COMPONENTS { ncid ({User}) }), modifyTime GDateTime, type CODED( WITH COMPONENTS { ncid ({PatGroupType}) }), entity CODEDWOSFORM, status CODED( WITH COMPONENTS { ncid ({PatGroupDefinitionStatus}) }), conditions PatGroupConditions OPTIONAL } PatGroupConditions ::= SET OF PatGroupCondition PatGroupCondition ::= SET { conditionType CODED( WITH COMPONENTS { ncid ({PatGroupConditionType}) }), condition CODED( WITH COMPONENTS { ncid ({PatGroupCondition}) }), value ConditionValue OPTIONAL } ConditionValue ::= CHOICE { numeric PatGroupConditionNumericValue, coded CODEDWOSFORM } PatGroupConditionNumericValue ::= SET { value Long, units CODED( WITH COMPONENTS { ncid ({Units}) }) } END