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-ClinicalTypes DEFINITIONS IMPLICIT TAGS ::= BEGIN COMMENTS ::= SEQUENCE OF CommentGroup CommentGroup ::= SET { comments CommentSet, sourceOfComment LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({SourceOfComment}) PRESENT }) }) }) PRESENT }) OPTIONAL, setId SetId OPTIONAL } CommentSet ::= SEQUENCE OF CommentItem CommentItem ::= CHOICE { text BasicString, code LCODEDWOSFORMATTRIBUTE, doc LDocumentAtt, sound LSoundAtt } CODEDCOMMENTS ::= SET OF CodedCommentSet CodedCommentSet ::= SET { comments LCODEDWOSFORM, sourceOfComment LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SourceOfComment}) PRESENT }) OPTIONAL, setId SetId OPTIONAL } ClinicalEvent ::= SET { header ClinObsHeader, clinObs ClinicalObservations } ClinicalObservations ::= SEQUENCE OF ClinObsInstance ClinObsInstance ::= SET { id ULong2, value ClinicalObservation, version ConceptVersion OPTIONAL } ClinicalObservation ::= SET { obsId» LCODEDWOSFORMATTRIBUTE, obsValue» LAttribute, refRange» ReferenceRange OPTIONAL, abnFlag» LCODEDWOSFORMATTRIBUTE OPTIONAL, status» LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({ResultStatus}) PRESENT }) }) }) PRESENT }) OPTIONAL, deltaFlag» LCODEDWOSFORMATTRIBUTE OPTIONAL, reportFlag» LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({ReportingFlag}) PRESENT }) }) }) PRESENT }) OPTIONAL, comments» COMMENTS OPTIONAL, display» DisplayText OPTIONAL, obsMods» ClinicalObservations OPTIONAL, aggObs» LCODEDWOSFORMATTRIBUTE OPTIONAL, format» LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({ClinObsFormat}) PRESENT }) }) }) PRESENT }) OPTIONAL, actionsInfo» EventActionsInfo OPTIONAL, setId» SetId OPTIONAL } ClinObsHeader» ::= SET { obsBatId» CODEDWOSFORMATTRIBUTE, fillerOrderNumber» FillerOrderNumber OPTIONAL, placerOrderNumber» PlacerOrderNumber OPTIONAL, testStatus» LCODEDWOSFORMATTRIBUTE OPTIONAL, obsDateTime» DateTimeIntervalAtt OPTIONAL, observedBy» CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) }) }) }) OPTIONAL, comments» COMMENTS OPTIONAL, type» CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({ClinObsType}) PRESENT }) }) }) }) OPTIONAL, severity» CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({ClinObsSeverity}) PRESENT }) }) }) }) OPTIONAL, severityValue» LIntegerAtt OPTIONAL, productionStatus» CODEDATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { coded ( WITH COMPONENTS { ..., ncid ({ProductionStatus}) PRESENT }) }) }) }) OPTIONAL, alertKey» AlertKey OPTIONAL, alertObject» AlertObject OPTIONAL, chain» CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({StoreChain}) PRESENT }) }) }) }) OPTIONAL, notifications» Notifications OPTIONAL, display» DisplayText OPTIONAL, aggObs» LCODEDWOSFORMATTRIBUTE OPTIONAL, format» LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({EventFormat}) PRESENT }) }) }) PRESENT }) OPTIONAL, displayOrder» DisplayOrderSet OPTIONAL, accessionNumber AccessionNumber OPTIONAL, clinObs ClinicalObservations OPTIONAL } AccessionNumber ::= UniqueReferenceId SetId ::= INTEGER DisplayOrderSet ::= SET OF DisplayOrderInContext DisplayOrderInContext ::= SET { context CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({DisplayContext}) PRESENT }) }) }) }), order DisplayOrder } DisplayOrder ::= INTEGER AlertKey» ::= SET { transId» AlertTransactionId, seq» AlertSequence } AlertTransactionId ::= INTEGER AlertSequence ::= INTEGER AlertObject» ::= BasicString Notifications» ::= SET OF Notification Notification» ::= SET { desType» CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({DestinationType}) PRESENT }) }) }) }), value» DestinationValue, id» NotificationId, deliverySystem» CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({DeliverySystem}) PRESENT }) }) }) }) OPTIONAL } NotificationId» ::= INTEGER DestinationValue ::= CHOICE { coded» CODEDWOSFORMATTRIBUTE, text» BasicString } DisplayText» ::= HtmlText ReferenceRange» ::= BasicString TextComments» ::= SET OF TextComment TextComment ::= SET { comments StringTexts, sourceOfComment LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SourceOfComment}) PRESENT }) OPTIONAL, setId SetId OPTIONAL } LocationDescription» ::= CHOICE { bodyLoc BodyLocation, complexBodyLoc ComplexBodyLocation } BodyLocation ::= SET { bodySite BodySite, bodySiteConnector L-BodySiteConnector OPTIONAL, aggregateBodySite L-BodyLocAggregateBodySite OPTIONAL } BodySite ::= SET { bodyAnatomy L-BodyAnatomy, side L-Side, laterality L-Laterality, depth L-BodyDepth, relativeDepth L-BodyRelativeDepth, level L-BodyLevel, relativeLevel L-BodyRelativeLevel, relativeSideOrLaterality L-RelativeSideOrLaterality } L-BodySiteConnector ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({BodySiteConnector}) PRESENT }) L-BodyLocAggregateBodySite ::= L-AggregateBodySite L-AggregateBodySite ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AggregateBodySite}) PRESENT }) L-BodyAnatomy ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({BodyAnatomy}) PRESENT }) L-Side ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Side}) PRESENT }) L-Laterality ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Laterality}) PRESENT }) L-BodyDepth ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({BodyDepth}) PRESENT }) L-BodyRelativeDepth ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({BodyRelativeDepth}) PRESENT }) L-BodyLevel ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({BodyLevel}) PRESENT }) L-BodyRelativeLevel ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({BodyRelativeLevel}) PRESENT }) L-RelativeSideOrLaterality ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({RelativeSideOrLaterality}) PRESENT }) ComplexBodyLocation ::= SET { } PathologicLesion ::= SET { pathologicStructure LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PathologicStructure}) PRESENT }), lesionModifier LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({LesionModifier}) PRESENT }) OPTIONAL } DeviceInfo ::= SET { device LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Device}) PRESENT }), model Model OPTIONAL, serialNumber BasicString OPTIONAL } Model ::= BasicString PriorityRank ::= INTEGER MedRecNumber ::= BasicString UnitNumber ::= INTEGER RadiologyNumber ::= BasicString HemsEncounterId ::= NumericId SiteEncounterId ::= SET { facility CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Facility}) PRESENT }), siteEncNum SiteEncounterNumber } SiteEncounterNumber ::= BasicString MedicalRecordId ::= SET { facility CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({Facility}) PRESENT }) }) }) }), medRecNumber MedRecNumber } EventDateTime ::= CHOICE { dateTime DateTime, timeInterval TimeInterval } PlacerGroupOrderNumber ::= UniqueReferenceId FillerGroupOrderNumber ::= UniqueReferenceId GroupOrderNumber ::= UniqueReferenceId PlacerOrderNumber ::= UniqueReferenceId FillerOrderNumber ::= UniqueReferenceId DocumentId ::= UniqueReferenceId PKICertificate ::= OctetString RelatedClinicianInfos ::= SET OF RelatedClinicianInfo RelatedClinicianInfo ::= SET { clinicianRole CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ClinicianRole}) PRESENT }), clinician LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }), setId SetId OPTIONAL } EnterpriseReferenceId ::= BasicString EnteredTime ::= DateTime EffectiveTime ::= DateTime Addresses ::= SET OF Address Address ::= SET { addressType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AddressType}) PRESENT }) OPTIONAL, street1 Street1 OPTIONAL, street2 Street2 OPTIONAL, city LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({City}) PRESENT }) OPTIONAL, county LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({County}) PRESENT }) OPTIONAL, state LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({State}) PRESENT }) OPTIONAL, postCode LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PostCode}) PRESENT }) OPTIONAL, country LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Country}) PRESENT }) OPTIONAL, fullAddress FullAddress OPTIONAL, addressAudit AddressAudit OPTIONAL, setId SetId OPTIONAL } Street1 ::= BasicString Street2 ::= BasicString FullAddress ::= BasicString AddressAudit ::= AuditInfo AuditInfo ::= SET { createAuditNum CreateAuditNum OPTIONAL, rowUpdateAuditNum RowUpdateAuditNum OPTIONAL, rowDeleteAuditNum RowDeleteAuditNum OPTIONAL } CreateAuditNum ::= INTEGER RowUpdateAuditNum ::= INTEGER RowDeleteAuditNum ::= INTEGER PatientId ::= SET { unitNumber UnitNumber OPTIONAL, refId EnterpriseReferenceId OPTIONAL, hemsEncId HemsEncounterId OPTIONAL, siteEncId SiteEncounterId OPTIONAL, medRecId MedicalRecordId OPTIONAL } StringHeader ::= SET { version Version, stringType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({StringType}) PRESENT }), stringSubType CODEDWOSFORM, stringKey StringKey, eventDateTime EventDateTime, dataType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DataType}) PRESENT }) OPTIONAL, compressionScheme CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CompressionAlgorithm}) PRESENT }) OPTIONAL, eventLocation LocationInfo OPTIONAL, dataEntryModel LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DataEntryModel}) PRESENT }) OPTIONAL, semanticLinks SemanticLinks OPTIONAL, actionsInfo» EventActionsInfo OPTIONAL } EventActionsInfo» ::= SEQUENCE OF EventActionInfo EventActionInfo ::= SET { clinician» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) OPTIONAL, actionId» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({EventActionId}) PRESENT }), enteredBy» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) OPTIONAL, enteredTime» EnteredTime OPTIONAL, effectiveTime» EffectiveTime OPTIONAL, location» LocationInfo OPTIONAL, pointOfCare» LocationInfo OPTIONAL, textComments» TextComments OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({EventActionComment}) PRESENT }) PRESENT } )) OPTIONAL, associatedActions» EventActionsInfo OPTIONAL, elementPaths» ElementPaths OPTIONAL, application LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({EventActionProgram}) PRESENT }) }) }) PRESENT }) OPTIONAL, reason LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({EventActionReason}) PRESENT }) }) }) PRESENT }) OPTIONAL, comments COMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments (WITH COMPONENT ( WITH COMPONENTS { ..., code ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({EventActionInfoComment}) PRESENT }) }) }) PRESENT }) PRESENT } )) PRESENT } )) OPTIONAL, setId SetId OPTIONAL, editVersion» EditVersion, pkiCertificate» PKICertificate OPTIONAL } SemanticLink ::= SET { relationship CODEDWOSFORMATTRIBUTE( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({SemanticLinkRelationship}) PRESENT }) }) }) }), objectPointer ObjectPointer, linkInfo EventActionsInfo OPTIONAL, setId SetId OPTIONAL } SemanticLinks ::= SET OF SemanticLink PatDatumObject ::= INSTANCE-OF-CONCEPT({PatDatumObjectSet}) Names ::= SET OF Name Name ::= SET { nameIndex NameIndex OPTIONAL, nameType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({NameType}) PRESENT }) OPTIONAL, lastName LastName OPTIONAL, lastName2 LastName2 OPTIONAL, firstName FirstName OPTIONAL, middleName MiddleName OPTIONAL, middleName2 MiddleName2 OPTIONAL, suffix Suffix OPTIONAL, title Title OPTIONAL, degree Degree OPTIONAL, firstNameSoundex FirstNameSoundex OPTIONAL, lastNameSoundex LastNameSoundex OPTIONAL, fullName FullName OPTIONAL, nameAudit NameAudit OPTIONAL, setId SetId OPTIONAL } NameIndex ::= INTEGER LastName ::= BasicString LastName2 ::= BasicString FirstName ::= BasicString MiddleName ::= BasicString MiddleName2 ::= BasicString Suffix ::= BasicString Title ::= BasicString Degree ::= BasicString FirstNameSoundex ::= BasicString LastNameSoundex ::= BasicString FullName ::= BasicString NameAudit ::= AuditInfo Phones ::= SET OF Phone Phone ::= SET { phoneType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PhoneType}) PRESENT }) OPTIONAL, countryCode CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CountryCode}) PRESENT }) OPTIONAL, areaCode AreaCode OPTIONAL, localNumber LocalNumber OPTIONAL, extension Extension OPTIONAL, phoneAudit PhoneAudit OPTIONAL, setId SetId OPTIONAL } AreaCode ::= BasicString LocalNumber ::= BasicString Extension ::= BasicString PhoneAudit ::= AuditInfo Ssn ::= BasicString AuditTransactions ::= SET OF AuditTransaction AuditTransaction ::= SET { hemsEncId HemsEncounterId, unitNumber UnitNumber, auditNumber AuditNumber, transactionType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({TransactionType}) PRESENT }), transactionTime TransactionTime, employee LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AuditEmployee}) PRESENT }), version EditVersion, mmiVersion EditVersion, mmiFacility CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({MmiFacility}) PRESENT }), encFacility CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({EncFacility}) PRESENT }), setId SetId OPTIONAL } AuditNumber ::= INTEGER TransactionTime ::= DateTime QuantityUnits ::= SDecimalAttribute( WITH COMPONENTS { value, units ( WITH COMPONENTS { ..., ncid ({DoseUnits}) PRESENT }) OPTIONAL }) Duration ::= STimeAttribute END MMM-LabData DEFINITIONS IMPLICIT TAGS ::= BEGIN StandardLabData» ::= SET { labDataHeader» LabDataHeader, results» StdLabObservations } LabDataHeader ::= SET { testName» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SpecificLabTest}) PRESENT }), specimens» LabSpecimens OPTIONAL, verifiedDateTime» DateTime OPTIONAL, resultReceivedDateTime» DateTime OPTIONAL, fillerOrderNumber» FillerOrderNumber OPTIONAL, placerOrderNumber» PlacerOrderNumber OPTIONAL, testStatus» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ResultStatus}) PRESENT }) OPTIONAL, resultingTechnicians» L-ResultingTechnicians OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({LabCodedComments}) PRESENT }) PRESENT } )) OPTIONAL, textComments» TextComments OPTIONAL } L-ResultingTechnicians» ::= SET OF L-ResultingTechnician L-ResultingTechnician» ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) LabSpecimens» ::= SET OF LabSpecimen LabSpecimen» ::= SET { collectionDateTime» EventDateTime, specimenReceivedDateTime» DateTime OPTIONAL, aggregateSpecDescript» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AggregateSpecDescript}) PRESENT }) OPTIONAL, specimenDescript» SpecimenDescript OPTIONAL, collectors» L-Collectors OPTIONAL, collectionLocation» LocationInfo OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({LabCodedComments}) PRESENT }) PRESENT } )) OPTIONAL, textComments» TextComments OPTIONAL, setId» SetId OPTIONAL } L-Collectors» ::= SET OF L-Collector L-Collector» ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Collector}) PRESENT }) SpecimenDescript» ::= SET { bodySite» BodySite OPTIONAL, aggregateBodySite» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AggregateBodySite}) PRESENT }) OPTIONAL, specimenType» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SpecimenType}) PRESENT }) OPTIONAL, specimenCollectionMethod» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SpecimenCollectionMethod}) PRESENT }) OPTIONAL, volume» ObservationValue( WITH COMPONENTS { observation ( VObservation ) , units}) OPTIONAL, fuzzyVolume» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({FuzzyVolume}) PRESENT }) OPTIONAL, collectionDevice» DeviceInfo OPTIONAL, pathologicLesion» PathologicLesion OPTIONAL, color» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SpecimenColor}) PRESENT }) OPTIONAL, odor» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SpecimenOdor}) PRESENT }) OPTIONAL, consistency» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SpecimenConsistency}) PRESENT }) OPTIONAL, patientPosition» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PatientPosition}) PRESENT }) OPTIONAL, prostheticDevice» DeviceInfo OPTIONAL } ObservationValue» ::= SET { observation» Observation, negation» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Negation}) PRESENT }) OPTIONAL, numericOperator» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({NumericOperator}) PRESENT }) OPTIONAL, uncertainty» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Uncertainty}) PRESENT }) OPTIONAL, machineProbability» DecimalX OPTIONAL, userStatedProbability» DecimalX OPTIONAL, fuzzyStatement» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({FuzzyStatement}) PRESENT }) OPTIONAL, units» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Units}) PRESENT }) OPTIONAL } NObservation ::= Observation( WITH COMPONENTS { ldecimal, linteger, lrange, ltiter, lcoded, text, ltime, ldateTime, null}) VObservation ::= Observation( WITH COMPONENTS { ldecimal, null}) Observation ::= CHOICE { decimal DecimalX, integer Long, range Range, titer Titer, coded CODED, ldecimal LDecimal, linteger LLong, lrange LRange, ltiter LTiter, lcoded LCODEDWOSFORM, text Text, time Time, ltime LTime, dateTime DateTime, ldateTime LDateTime, null Null } StdLabObservations» ::= SET OF StdLabObservation StdLabObservation» ::= SET { observationId» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ObservationId}) PRESENT }), observationValue» ObservationValue( WITH COMPONENTS { ..., observation ( NObservation ) PRESENT }), referencesRange» Text OPTIONAL, abnormalFlag» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AbnormalFlag}) PRESENT }) OPTIONAL, resultStatus» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ResultStatus}) PRESENT }) OPTIONAL, deltaFlag» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DeltaFlag}) PRESENT }) OPTIONAL, reportingFlag» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ReportingFlag}) PRESENT }) OPTIONAL, textComments» TextComments OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({LabCodedComments}) PRESENT }) PRESENT } )) OPTIONAL, setId» SetId OPTIONAL } END MMM-ProbabilityObs DEFINITIONS IMPLICIT TAGS ::= BEGIN ProbabilityObs» ::= ClinicalObservation( WITH COMPONENTS { obsId ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., relSFormNumId OPTIONAL , ncid (162456) PRESENT }) }) }) PRESENT }) , obsValue ( WITH COMPONENTS { errCoded, errText, att ( WITH COMPONENTS { value ( WITH COMPONENTS { decimal (0..1) }) }) }) }) END MMM-UserDefinedAccessObs DEFINITIONS IMPLICIT TAGS ::= BEGIN UserDefinedAccessObs» ::= ClinicalObservation( WITH COMPONENTS { obsId ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., relSFormNumId OPTIONAL , ncid (162458) PRESENT }) }) }) PRESENT }) , obsValue ( WITH COMPONENTS { att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({UserDefinedAccess}) PRESENT }) }) }) , errCoded, errText}) }) END MMM-OrderObservationObs DEFINITIONS IMPLICIT TAGS ::= BEGIN OrderObservationObs» ::= ClinicalObservation( WITH COMPONENTS { obsId ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({ObservationIdentifier}) PRESENT }) }) }) PRESENT }) , obsValue, refRange OPTIONAL , abnFlag ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({AbnormalFlag}) PRESENT }) }) }) PRESENT }) OPTIONAL , status OPTIONAL , comments (WITH COMPONENT ( WITH COMPONENTS { ..., comments (WITH COMPONENT ( WITH COMPONENTS { ..., code ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({PatObsComment}) PRESENT }) }) }) PRESENT }) PRESENT } )) PRESENT } )) OPTIONAL , actionsInfo OPTIONAL , setId OPTIONAL , obsMods (WITH TYPES { ProbabilityObs OPTIONAL, UserDefinedAccessObs OPTIONAL}) OPTIONAL }) END MMM-PharmacyOrder DEFINITIONS IMPLICIT TAGS ::= BEGIN PharmacyOrder» ::= SET { drugs» Drugs, routeInfos» RouteInfos OPTIONAL, providerAdminInstructions» ProviderAdminInstructions OPTIONAL, deliverToLocation» DeliverToLocation OPTIONAL, substitutionStatus» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SubstitutionStatus}) PRESENT }) OPTIONAL, dispensed» QuantityUnits OPTIONAL, numberOfRefills» NumberOfRefills OPTIONAL, prescriptionNumber» PrescriptionNumber OPTIONAL, numberOfRefillsRem» NumberOfRefillsRem OPTIONAL, numberOfRefillsDis» NumberOfRefillsDis OPTIONAL, dtMostRecentDoseDis» DtMostRecentDoseDis OPTIONAL, needsHumanReview» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({NeedsHumanReview}) PRESENT }) OPTIONAL, pharmacySpecialIns» PharmSpecialInstructInfos OPTIONAL, ivVolumeRate» IvRate OPTIONAL, ivSpecialRate» IvSpecialRate OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({PharmOrderCodedComment}) PRESENT }) PRESENT } )) OPTIONAL, prescriptionType» LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({PrescriptionType}) PRESENT }) }) }) PRESENT }) OPTIONAL, comments» COMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments (WITH COMPONENT ( WITH COMPONENTS { ..., code ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({PharmOrderCodedComment}) PRESENT }) }) }) PRESENT }) PRESENT } )) PRESENT } )) OPTIONAL, sortIndicator» LCODEDWOSFORMATTRIBUTE( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({RxSortIndicator}) PRESENT }) }) }) PRESENT }) OPTIONAL, results» ClinicalObservations(WITH TYPES { OrderObservationObs * }) } PrescriptionNumber» ::= UniqueReferenceId Drugs» ::= SET OF Drug Drug» ::= SET { rXComponentType» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({RXComponentType}) PRESENT }) OPTIONAL, componentCode» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PharmacyItems}) PRESENT }), doseUnits» DoseUnitInfo OPTIONAL, giveDosageForm» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({GiveDosageForm}) PRESENT }) OPTIONAL, totalDailyDose» QuantityUnits( WITH COMPONENTS { value, units}) OPTIONAL, ingredients» Ingredients OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({DrugCodedComment}) PRESENT }) PRESENT } )) OPTIONAL, textComments» TextComments OPTIONAL, setId» SetId OPTIONAL } DoseUnitInfo» ::= CHOICE { standardDose» QuantityUnits( WITH COMPONENTS { value, units}), slidingDose» SlidingDose } SlidingDose» ::= SDecimalRangeAttribute( WITH COMPONENTS { value, units ( WITH COMPONENTS { ..., ncid ({DoseUnits}) PRESENT }) }) Ingredients» ::= SET OF Ingredient Ingredient» ::= SET { ingredientId» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PharmacyItems}) PRESENT }), amountUnits» DoseUnitInfo OPTIONAL, setId» SetId OPTIONAL } RouteInfos» ::= SET OF RouteInfo RouteInfo» ::= SET { routeAndMethod» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({RouteAndMethod}) PRESENT }), adminSite» AdminSite OPTIONAL, adminDevice» AdminDevice OPTIONAL, setId» SetId OPTIONAL } AdminSite» ::= LocationDescription( WITH COMPONENTS { bodyLoc ( WITH COMPONENTS { aggregateBodySite ( WITH COMPONENTS { ..., ncid ({PharmAdminSite}) PRESENT }) }) }) AdminDevice» ::= DeviceInfo ProviderAdminInstructions» ::= SET OF ProviderAdminInstruction ProviderAdminInstruction» ::= BasicString DeliverToLocation» ::= CHOICE { deliverToAddress Address, deliveryLocation PhysicalLocation } NumberOfRefills ::= ULong NumberOfRefillsRem ::= ULong NumberOfRefillsDis ::= ULong DtMostRecentDoseDis ::= DateTime PharmSpecialInstructInfos» ::= SET OF PharmSpecialInstructInfo PharmSpecialInstructInfo» ::= CHOICE { coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PharmSpecialInstruction}) PRESENT }), text BasicString } IvRate» ::= SET { ivGiveTime» Duration OPTIONAL, ivAmount» QuantityUnits( WITH COMPONENTS { value, units}) } IvSpecialRate» ::= SET { ivRate» IvRate, attachedToProduct» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({IVComponentCode}) PRESENT }) } END MMM-PatientOrders DEFINITIONS IMPLICIT TAGS ::= BEGIN GroupPatientOrder» ::= SET { groupOrderDateTime» DateTime, placerGroupOrderNumber» PlacerGroupOrderNumber, fillerGroupOrderNumber» FillerGroupOrderNumber, ordersInGroup» OrdersInGroup, comments» COMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments (WITH COMPONENT ( WITH COMPONENTS { ..., code ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({GroupPatientOrderComment}) PRESENT }) }) }) PRESENT }) PRESENT } )) PRESENT } )) OPTIONAL } OrdersInGroup» ::= SET OF OrderInGroup OrderInGroup ::= SET { sequenceInGroup» ULong, patientOrder» PatientOrder, setId» SetId OPTIONAL } PatientOrder» ::= SET { orderInfo» GeneralOrderInfo, orderDetail» OrderDetail OPTIONAL } GeneralOrderInfo» ::= SET { orderStatus» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({OrderStatus}) PRESENT }) OPTIONAL, placerOrderNumber» PlacerOrderNumber OPTIONAL, fillerOrderNumber» FillerOrderNumber OPTIONAL, timingQuantities» TimingQuantities OPTIONAL, reportToClinicians» RelatedClinicianInfos OPTIONAL, textComments» TextComments OPTIONAL, comments COMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments (WITH COMPONENT ( WITH COMPONENTS { ..., code ( WITH COMPONENTS { ..., att ( WITH COMPONENTS { value ( WITH COMPONENTS { codedWOSform ( WITH COMPONENTS { ..., ncid ({GeneralOrderInfoComment}) PRESENT }) }) }) PRESENT }) PRESENT } )) PRESENT } )) OPTIONAL, placerGroupNumber» UniqueReferenceId OPTIONAL } OrderDetail» ::= CHOICE { pharmacyOrder PharmacyOrder } TimingQuantities» ::= SET OF TimingQuantity TimingQuantity» ::= SET { quantityUnits» QuantityUnits OPTIONAL, interval» Interval OPTIONAL, duration» DurationInfo OPTIONAL, orderStartDateTime» OrderStartDateTime, orderEndDateTime» OrderEndDateTime OPTIONAL, priorityType» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({PriorityType}) PRESENT }) OPTIONAL, priority» OrderPriority OPTIONAL, condition» ConditionInfo OPTIONAL, timeQuantityDisplay» TimeQuantityDisplay OPTIONAL, conjunction» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Conjunction}) PRESENT }) OPTIONAL, complexOrderSeq» ComplexOrderSeq OPTIONAL, setId» SetId OPTIONAL, softOrderEndDateTime» OrderEndDateTime OPTIONAL } Interval» ::= SET { frequencies» Frequencies, timesToDo» TimesToDo OPTIONAL } Frequencies» ::= SET OF Frequency Frequency» ::= CHOICE { namedFrequency» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({NamedFrequency}) PRESENT }), valuedFrequency» ValuedFrequency, frequencyRange» FrequencyRange, dayOfWeekFrequency» DayOfWeekFrequency, dayOfMonthFrequency» DayOfMonthFrequency, unixCronFrequency» UnixCronFrequency } UnixCronFrequency» ::= BasicString ValuedFrequency» ::= SIntegerAttribute( WITH COMPONENTS { value, units ( WITH COMPONENTS { ..., ncid ({TimeUnits}) PRESENT }) }) FrequencyRange» ::= SIntegerRangeAttribute( WITH COMPONENTS { value, units ( WITH COMPONENTS { ..., ncid ({TimeUnits}) PRESENT }) }) DayOfWeekFrequency» ::= SET { dayOfWeek LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DayOfTheWeek}) PRESENT }), howOften CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({HowOften}) PRESENT }) } DayOfMonthFrequency» ::= SET { dayOfMonth DayOfMonth, howOften CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({HowOften}) PRESENT }) } DayOfMonth» ::= ULong(1..31) TimesToDo» ::= SET OF TimeToDo TimeToDo» ::= STimeAttribute DurationInfo» ::= CHOICE { numberOfTimes NumberOfTimes, duration Duration } NumberOfTimes» ::= ULong OrderStartDateTime» ::= DateTime OrderEndDateTime» ::= DateTime OrderPriority» ::= SET { priority» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Priority}) PRESENT }), criticalTime» CriticalTime OPTIONAL } CriticalTime» ::= Duration ConditionInfo» ::= CHOICE { coded CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Condition}) PRESENT }), text BasicString } TimeQuantityDisplay» ::= BasicString ComplexOrderSeq» ::= SET { predecessorPlacerNumber PlacerOrderNumber OPTIONAL, predecessorFillerNumber FillerOrderNumber OPTIONAL, sequenceTimingInfo SequenceTimingInfo, maxRepeats MaxRepeats } SequenceTimingInfo» ::= SET { sequenceTimingCode CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SequenceTimingCode}) PRESENT }), timeInterval Duration } MaxRepeats» ::= ULong END MMM-MmiEncounter DEFINITIONS IMPLICIT TAGS ::= BEGIN MmiNames ::= SET OF MmiName MmiName ::= SET { nameIndex NameIndex OPTIONAL, nameTypeNcid Ncid OPTIONAL, lastName LastName OPTIONAL, lastName2 LastName2 OPTIONAL, firstName FirstName OPTIONAL, middleName MiddleName OPTIONAL, middleName2 MiddleName2 OPTIONAL, suffix Suffix OPTIONAL, title Title OPTIONAL, degree Degree OPTIONAL, firstNameSoundex FirstNameSoundex OPTIONAL, lastNameSoundex LastNameSoundex OPTIONAL, fullName FullName OPTIONAL, nameAudit NameAudit OPTIONAL } MmiAddresses ::= SET OF MmiAddress MmiAddress ::= SET { addressTypeNcid Ncid OPTIONAL, street1 Street1 OPTIONAL, street2 Street2 OPTIONAL, city BasicString OPTIONAL, county BasicString OPTIONAL, state BasicString OPTIONAL, postCode BasicString OPTIONAL, country BasicString OPTIONAL, fullAddress FullAddress OPTIONAL, addressAudit AddressAudit OPTIONAL } MmiPhones ::= SET OF MmiPhone MmiPhone ::= SET { phoneTypeNcid Ncid OPTIONAL, countryCode BasicString OPTIONAL, areaCode AreaCode OPTIONAL, localNumber LocalNumber OPTIONAL, extension Extension OPTIONAL, phoneAudit PhoneAudit OPTIONAL } MmiAuditTransactions ::= SET OF MmiAuditTransaction MmiAuditTransaction ::= SET { hemsEncounterId HemsEncounterId, unitNumber UnitNumber, auditNumber AuditNumber, transactionTypeNcid Ncid, transactionTime TransactionTime, employeeId Ncid, applicationName BasicString, versionCode BasicString, mmiVersion BasicString, mmiFacilityNcid Ncid, encFacilityNcid Ncid } GenericMemberIds ::= SET OF GenericMemberId GenericMemberId ::= SET { idTypeNcid IdTypeNcid, idValue IdValue, assigningAuthorityNcid AssigningAuthorityNcid OPTIONAL, genericAudit GenericAudit OPTIONAL } IdTypeNcid ::= Ncid IdValue ::= VisibleString AssigningAuthorityNcid ::= Ncid GenericAudit ::= AuditInfo GenericData ::= SET OF GenericDatum GenericDatum ::= SET { ordinal GDOrdinal OPTIONAL, typeNcid GDType, codedValue GDCodedValue OPTIONAL, textValue GDTextValue OPTIONAL, container GenericData OPTIONAL, updateMode UpdateMode OPTIONAL, audit GDAudit OPTIONAL } GDOrdinal ::= INTEGER GDType ::= Ncid GDCodedValue ::= LCODEDWOSFORM GDTextValue ::= BasicString GDAudit ::= AuditInfo UpdateMode ::= INTEGER END MMM-EncounterData DEFINITIONS IMPLICIT TAGS ::= BEGIN EncounterData ::= SET { mmiFacilityNcid Ncid OPTIONAL, hemsEncounterId HemsEncounterId OPTIONAL, encounterNumber SiteEncounterNumber OPTIONAL, unitNumber UnitNumber OPTIONAL, arrivalTime DateTime OPTIONAL, departureTime DateTime OPTIONAL, symptom BasicString OPTIONAL, symptomOnsetTime DateTime OPTIONAL, admissionClassNcid Ncid OPTIONAL, admissionTypeNcid Ncid OPTIONAL, hospitalServiceNcid Ncid OPTIONAL, contractCode BasicString OPTIONAL, readmissionIndicator BasicString OPTIONAL, dischargeDispositionNcid Ncid OPTIONAL, generalConsent BasicString OPTIONAL, scheduledTime DateTime OPTIONAL, accidentInfo AccidentInfo OPTIONAL, encounterRoles EncounterRoleInfos OPTIONAL, locationInfos MmiLocationInfos OPTIONAL, insurances InsuranceInfos OPTIONAL, codedDatas CodedDatas OPTIONAL, recordContext OctetString OPTIONAL, encounterAudit AuditInfo OPTIONAL, updateMode UpdateMode OPTIONAL, generated Generated OPTIONAL, returnGenerated ReturnGenerated OPTIONAL, auditTransactions MmiAuditTransactions OPTIONAL, genericData GenericData OPTIONAL } AccidentInfo ::= SET { accidentTime DateTime OPTIONAL, accidentCodeNcid Ncid OPTIONAL, updateMode UpdateMode OPTIONAL, accidentLocation BasicString OPTIONAL } EncounterRoleInfos ::= SET OF EncounterRoleInfo EncounterRoleInfo ::= SET { roleIndex ULong OPTIONAL, roleNcid Ncid OPTIONAL, roleAudit AuditInfo OPTIONAL, userNumber ULong OPTIONAL, unitNumber UnitNumber OPTIONAL, roleStartTime DateTime OPTIONAL, roleEndTime DateTime OPTIONAL, roleServiceNcid Ncid OPTIONAL, roleIdentity RoleIdentity OPTIONAL, roleEmployerIdentity RoleEmployerIdentity OPTIONAL, roleToPatientRelNcid Ncid OPTIONAL, updateMode UpdateMode OPTIONAL } RoleIdentity ::= SET { name MmiName OPTIONAL, address MmiAddress OPTIONAL, phone MmiPhone OPTIONAL, ssn Ssn OPTIONAL, sex BasicString OPTIONAL } RoleEmployerIdentity ::= SET { fullName FullName OPTIONAL, unitNumber UnitNumber OPTIONAL } MmiLocationInfos ::= SET OF MmiLocationInfo MmiLocationInfo ::= SET { locationIndex ULong OPTIONAL, scheduledTime DateTime OPTIONAL, arrivalTime DateTime OPTIONAL, departureTime DateTime OPTIONAL, departmentNcid Ncid OPTIONAL, roomNcid Ncid OPTIONAL, bedNcid Ncid OPTIONAL, updateMode UpdateMode OPTIONAL, locAudit AuditInfo OPTIONAL } InsuranceInfos ::= SET OF InsuranceInfo InsuranceInfo ::= SET { priority PriorityRank OPTIONAL, insuranceNcid Ncid OPTIONAL, insuranceAudit AuditInfo OPTIONAL, insuranceTypeNcid Ncid OPTIONAL, insuredGroupNumber BasicString OPTIONAL, insuredGroupName BasicString OPTIONAL, insuredGroupEmpId BasicString OPTIONAL, insuredGroupEmpName BasicString OPTIONAL, companyPlanCode ULong OPTIONAL, policyNumber BasicString OPTIONAL, planEffectiveTime DateTime OPTIONAL, planExpirationTime DateTime OPTIONAL, verificationStatusNcid Ncid OPTIONAL, precertificationInfo PrecertificationInfo OPTIONAL, insuranceRoleNcid Ncid OPTIONAL, insuranceUnitNumber UnitNumber OPTIONAL, subscriberIdentity SubscriberIdentity OPTIONAL, subscriberToPatientRelNcid Ncid OPTIONAL, subscriberEmployerIdentity SubscriberIdentity OPTIONAL, updateMode UpdateMode OPTIONAL, champusInfo ChampusInfo OPTIONAL } PrecertificationInfo ::= SET { precertificationAuthorization BasicString OPTIONAL, precertificationContact MmiName OPTIONAL, precertificationTime DateTime OPTIONAL, precertificationDays ULong OPTIONAL } SubscriberIdentity ::= RoleIdentity ChampusInfo ::= SET { champusServiceNcid Ncid OPTIONAL, champusStatusNcid Ncid OPTIONAL, champusRankGradeNcid Ncid OPTIONAL } CodedDatas ::= SET OF CodedData CodedData ::= SET { codedDataNcid Ncid OPTIONAL, codeNcid Ncid OPTIONAL, codedDataIndex ULong OPTIONAL, codingMethodNcid Ncid OPTIONAL, codeValue BasicString OPTIONAL, effectiveTime DateTime OPTIONAL, updateMode UpdateMode OPTIONAL, codedDataAudit AuditInfo OPTIONAL } Generated ::= BOOLEAN ReturnGenerated ::= BOOLEAN END MMM-MmiData DEFINITIONS IMPLICIT TAGS ::= BEGIN MmiData ::= SET { unitNumber UnitNumber OPTIONAL, referenceId EnterpriseReferenceId OPTIONAL, memberInfo MemberInfo OPTIONAL, motherName MotherName OPTIONAL, maidenName MaidenName OPTIONAL, mmiFlags MmiFlags OPTIONAL, recordContext OctetString OPTIONAL, mmiIdAudit AuditInfo OPTIONAL, auditTransactions MmiAuditTransactions OPTIONAL, recordTags RecordTags OPTIONAL } RecordTags ::= SET OF RecordTag RecordTag ::= SET { tagName TagName, tagValue TagValue } TagName ::= VisibleString TagValue ::= VisibleString MemberInfo ::= SET { names MmiNames OPTIONAL, addresses MmiAddresses OPTIONAL, phones MmiPhones OPTIONAL, ssn Ssn OPTIONAL, correctSsnFlag BasicString OPTIONAL, ssnMissingReasonNcid Ncid OPTIONAL, govtHealthNumber BasicString OPTIONAL, passPort BasicString OPTIONAL, sex BasicString OPTIONAL, dateOfBirth DateOfBirth OPTIONAL, birthDateResolution BirthDateResolution OPTIONAL, dateOfDeath DateTime OPTIONAL, deathDateResolution DeathDateResolution OPTIONAL, raceNcid Ncid OPTIONAL, religionNcid Ncid OPTIONAL, maritalStatusNcid Ncid OPTIONAL, patientFacilities FacilitySpecificIds OPTIONAL, genericMemberIds GenericMemberIds OPTIONAL, genericData GenericData OPTIONAL } DateOfBirth ::= SET { birthDate DateTime, dateEstimated BOOLEAN OPTIONAL } BirthDateResolution ::= Ncid DeathDateResolution ::= Ncid FacilitySpecificIds ::= SET OF FacilitySpecificId FacilitySpecificId ::= SET { mmiFacilityNcid Ncid OPTIONAL, medRecNumber MedRecNumber OPTIONAL, radiologyNumber RadiologyNumber OPTIONAL, facilityAudit AuditInfo OPTIONAL, inactiveMRNFlag VisibleString OPTIONAL } MotherName ::= MmiName MaidenName ::= MmiName MmiFlags ::= SET { patientFlag BasicString OPTIONAL, guarantorFlag BasicString OPTIONAL, expiredFlag BasicString OPTIONAL, adoptionFlag BasicString OPTIONAL, unidentifiedFlag BasicString OPTIONAL, institutionalFlag BasicString OPTIONAL, deactivateFlag BasicString OPTIONAL, previousLinkErrorFlag BasicString OPTIONAL, organDonorFlag BasicString OPTIONAL } END MMM-ClinicalTextData DEFINITIONS IMPLICIT TAGS ::= BEGIN ClinicalTextData» ::= SET { eventDate» EventDateTime, reportType» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({TextReportType}) PRESENT }), reportStatus» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({TextReportStatus}) PRESENT }), contextInfo» AcquisitionInfo, reportText» TextReportLink, abnormalFlag» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AbnormalFlag}) PRESENT }) OPTIONAL, compressionScheme» CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CompressionAlgorithm}) PRESENT }) OPTIONAL, pointOfCare» LocationInfo OPTIONAL, documentId» DocumentId OPTIONAL, reportingFlag» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({ReportingFlag}) PRESENT }) OPTIONAL, textComments» TextComments OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({TextCodedComment}) PRESENT }) PRESENT } )) OPTIONAL } AcquisitionInfo» ::= CHOICE { transcriptionInfo TranscriptionInfo, directEntryInfo DirectEntryInfo, incomingCall IncomingPhoneNoteInfo, outgoingCall OutgoingPhoneNoteInfo } TranscriptionInfo» ::= SET { enteredBy» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) OPTIONAL, dateTimeOfDictation» DateTime OPTIONAL, dateTimeOfTranscription» DateTime OPTIONAL, dictatingClinician» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) OPTIONAL, dictatedForClinician» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) OPTIONAL } DirectEntryInfo» ::= SET { enteredBy» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) } IncomingPhoneNoteInfo» ::= SET { toClinician» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }), caller» CallPersonInfo, callerRelationship» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({InCallRelationship}) PRESENT }) OPTIONAL, priority» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CallPriority}) PRESENT }), status» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CallStatus}) PRESENT }), callerPhones» CallerPhones OPTIONAL, typeOfCall» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({IncomingCallType}) PRESENT }) OPTIONAL } OutgoingPhoneNoteInfo» ::= SET { fromClinician» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }), personCalled» CallPersonInfo, calledRelationship» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({OutCallRelationship}) PRESENT }) OPTIONAL, calledPhones» CalledPhones OPTIONAL } CallPersonInfo» ::= CHOICE { callerId LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }), callerName CallerName } CallerName ::= Name CallerPhones ::= Phones CalledPhones ::= Phones TextReportLink ::= SET { objectPtr InternalObjectPointer OPTIONAL, text Text OPTIONAL } END MMM-Allergies DEFINITIONS IMPLICIT TAGS ::= BEGIN AllergyInfo» ::= SET { allergyType» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AllergyType}) PRESENT }), allergyId» AllergyId OPTIONAL, compositeSubstance» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CompositeSubstance}) PRESENT }), allergenIds» L-AllergenIds, severity» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AllergySeverity}) PRESENT }) OPTIONAL, reactions» L-Reactions OPTIONAL, identificationDate» IdentificationDate OPTIONAL, sourceOfInfo» LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({SourceOfInfo}) PRESENT }) OPTIONAL, codedComments» CODEDCOMMENTS(WITH COMPONENT ( WITH COMPONENTS { ..., comments ( WITH COMPONENTS { ..., ncid ({AllergyCodedComments}) PRESENT }) PRESENT } )) OPTIONAL, textComments» TextComments OPTIONAL } AllergyId» ::= UniqueReferenceId L-AllergenIds» ::= SET OF L-AllergenId L-AllergenId» ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({AllergenId}) PRESENT }) L-Reactions» ::= SET OF L-Reaction L-Reaction» ::= LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({Reaction}) PRESENT }) IdentificationDate» ::= DateTime END MMM-PatDataStorage DEFINITIONS IMPLICIT TAGS ::= BEGIN PatDataStorage ::= SET { patId PatientId, stringHeader StringHeader, patDatum PatDatum OPTIONAL, patDatumObject PatDatumObject OPTIONAL } PatDataStorageV4 ::= SET { patId PatientId, stringHeader StringHeaderV4, patDatum PatDatum OPTIONAL, patDatumObject PatDatumObject OPTIONAL } PatDatum ::= CHOICE { standardLabData StandardLabData, patientOrder PatientOrder, groupPatientOrder GroupPatientOrder, mmiData MmiData, encounterData EncounterData, clinicalTextData ClinicalTextData, allergyInfo AllergyInfo } StringHeaderV4 ::= SET { version Version, stringType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({StringType}) PRESENT }), stringSubType CODEDWOSFORM, stringKey StringKey, updateInfo ModifyInfo, eventDateTime EventDateTime, dataType CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DataType}) PRESENT }), compressionScheme CODEDWOSFORM( WITH COMPONENTS { ..., ncid ({CompressionAlgorithm}) PRESENT }) OPTIONAL, eventLocation LocationInfo OPTIONAL, deleteInfo ModifyInfo OPTIONAL, dataEntryModel LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({DataEntryModel}) PRESENT }) OPTIONAL, semanticLinks SemanticLinks OPTIONAL, actionsInfo» EventActionsInfo OPTIONAL } ModifyInfo ::= SET { time DateTime, reason LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({EventActionReason}) PRESENT }) OPTIONAL, user LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({User}) PRESENT }) OPTIONAL, application LCODEDWOSFORM( WITH COMPONENTS { ..., ncid ({EventActionProgram}) PRESENT }) OPTIONAL } END