Browsable Multilevel Healthcare Information Modelling 2.0 Grammar

CC-BY

Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/mlhim2/extracted
Source used for this grammar: Luciana Tricai Cavalini, Multilevel Healthcare Information Modelling 2.0, mlhim2.ecore, 06/2011

Summary

Syntax

Action ::=
	[time]::DvTemporal [description]::ItemStructure [ismTransition]::DvCodedString [instructionDetails]::DvCodedString
Activity ::=
	[description]::ItemStructure [timing]::DvParsable [actions]::DvToken+
AdminEntry ::=
	[data]::ItemStructure
ASKR ::=
	ε
ASKU ::=
	NAV
ASKU ::=
	NAV
Attestation ::=
	[attestedView]::DvMedia [proof]::DvParsable [reason]::DvCodedString [commiter]::PartyProxy [timeCommited]::DvTemporal [isPending]::DvBoolean
CareEntry ::=
	Action
CareEntry ::=
	Evaluation
CareEntry ::=
	Instruction
CareEntry ::=
	Observation
CCD ::=
	[definition]::Locatable [metaData]::MetaDataSet+ [ontology]::Ontology
Cluster ::=
	[items]::Item+
Composition ::=
	[attestation]::Attestation [links]::Link+ [original]::DvToken [predecessor]::DvToken [created]::DvTemporal [composer]::PartyProxy [territory]::Location [category]::DvCodedString [language]::DvLanguage [context]::EventContext [content]::Locatable
ContentItem ::=
	Entry
ContentItem ::=
	Section
DataStructure ::=
	History
DataStructure ::=
	ItemStructure
DER ::=
	ε
Device ::=
	[details]::ItemStructure
DvAny ::=
	DvBoolean
DvAny ::=
	DvChar
DvAny ::=
	DvEncapsulated
DvAny ::=
	DvInterval
DvAny ::=
	DvNumeric
DvAny ::=
	DvOrdered
DvAny ::=
	DvParagraph
DvAny ::=
	DvURI
DvAny ::=
	PartyProxy
DvAny ::=
	ReferenceRange
DvBoolean ::=
	[dv]::α
DvByte ::=
	[dv]::α
DvChar ::=
	DvLanguage
DvChar ::=
	DvNormalizedString
DvChar ::=
	DvString
DvChar ::=
	DvToken
DvCodedString ::=
	[codeString]::α [terminologyName]::α [terminologyAbbrev]::α
DvCount ::=
	[count]::α
DvDate ::=
	[dv]::α
DvDateTime ::=
	[dv]::α
DvDecimal ::=
	[dv]::α
DvDuration ::=
	[dv]::α
DvEncapsulated ::=
	DvMedia
DvEncapsulated ::=
	DvParsable
DvIdentifier ::=
	[issuer]::α [assigner]::α [name]::α
DvInt ::=
	[dv]::integer
DvInteger ::=
	[dv]::α
DvInterval ::=
	[lower]::DvOrdered [upper]::DvOrdered [lowerIncluded]::α [upperIncluded]::α [lowerUnbounded]::α [upperUnbounded]::α
DvLanguage ::=
	[dv]::α
DvLong ::=
	[dv]::α
DvMedia ::=
	DvMediaApp
DvMedia ::=
	DvMediaAudio
DvMedia ::=
	DvMediaImage
DvMedia ::=
	DvMediaModel
DvMedia ::=
	DvMediaMsg
DvMedia ::=
	DvMediaMultipart
DvMedia ::=
	DvMediaText
DvMedia ::=
	DvMediaVideo
DvMediaApp ::=
	[dv]::α
DvMediaAudio ::=
	[dv]::α
DvMediaImage ::=
	[dv]::α
DvMediaModel ::=
	[dv]::α
DvMediaMsg ::=
	[dv]::α
DvMediaMultipart ::=
	[dv]::α
DvMediaText ::=
	[dv]::string
DvMediaVideo ::=
	[dv]::α
DvNegativeInteger ::=
	[dv]::α
DvNonNegativeInteger ::=
	[dv]::α
DvNonPositiveInteger ::=
	[dv]::α
DvNormalizedString ::=
	[uuid]::α [language]::α [dv]::α
DvNumeric ::=
	DvByte
DvNumeric ::=
	DvDecimal
DvNumeric ::=
	DvInt
DvNumeric ::=
	DvInteger
DvNumeric ::=
	DvLong
DvNumeric ::=
	DvNegativeInteger
DvNumeric ::=
	DvNonNegativeInteger
DvNumeric ::=
	DvNonPositiveInteger
DvNumeric ::=
	DvPositiveInteger
DvNumeric ::=
	DvShort
DvNumeric ::=
	DvUnsignedByte
DvNumeric ::=
	DvUnsignedInt
DvNumeric ::=
	DvUnsignedLong
DvNumeric ::=
	DvUnsignedShort
DvOrdered ::=
	DvOrdinal
DvOrdered ::=
	DvQuantified
DvOrdinal ::=
	[dv]::α [symbol]::string
DvParagraph ::=
	[items]::DvString+
DvParsable ::=
	[dv]::α [formalism]::α
DvPositiveInteger ::=
	[dv]::α
DvProportion ::=
	[proportionType]::α
DvQuantified ::=
	DvCount
DvQuantified ::=
	DvQuantity
DvQuantified ::=
	DvRatio
DvQuantity ::=
	[units]::α
DvRate ::=
	[rateType]::α
DvRatio ::=
	DvProportion
DvRatio ::=
	DvRate
DvShort ::=
	[dv]::α
DvString ::=
	DvCodedString
DvString ::=
	DvIdentifier
DvString ::=
	[uuid]::α [language]::α [dv]::string
DvTemporal ::=
	DvDate
DvTemporal ::=
	DvDateTime
DvTemporal ::=
	DvDuration
DvTemporal ::=
	DvTime
DvTime ::=
	[dv]::α
DvToken ::=
	[dv]::α
DvUnsignedByte ::=
	[dv]::α
DvUnsignedInt ::=
	[dv]::α
DvUnsignedLong ::=
	[dv]::α
DvUnsignedShort ::=
	[dv]::α
DvURI ::=
	[dv]::α
Element ::=
	[dv]::DvAny
EntityRef ::=
	[uuid]::α [namespace]::α [objType]::α
Entry ::=
	AdminEntry
Entry ::=
	CareEntry
Evaluation ::=
	[data]::ItemStructure
Event ::=
	IntervalEvent
Event ::=
	PointEvent
EventContext ::=
	[healthcareFacility]::Organization [startTime]::DvTemporal [endTime]::DvTemporal [participation]::Participation [location]::Location [setting]::DvCodedString
ExceptionalValue ::=
	NI
FeederAudit ::=
	[originatingSystemAudit]::FeederAuditDetails [originatingSystemItemIds]::DvIdentifier+ [feederSystemAudit]::FeederAuditDetails [feederSystemIds]::DvIdentifier+ [originalContent]::DvEncapsulated
FeederAuditDetails ::=
	[systemId]::DvIdentifier [versionId]::DvNormalizedString [provider]::PartyIdentified [location]::Location [time]::DvTemporal [subject]::PartyProxy+
Folder ::=
	[items]::Composition+
Group ::=
	[members]::Party+
History ::=
	[origin]::DvTemporal [events]::Event+ [period]::DvDuration [duration]::DvDuration [summary]::ItemStructure
Instruction ::=
	[expiryTime]::DvTemporal [narrative]::DvString [wfDefinition]::DvParsable [activities]::Activity+
IntervalEvent ::=
	[width]::DvDuration [mathFunction]::DvCodedString [sampleCount]::DvCount
INV ::=
	DER
INV ::=
	OTH
INV ::=
	UNC
INV ::=
	DER
	OTH
	UNC
Item ::=
	Cluster
Item ::=
	Element
Item ::=
	Slot
ItemList ::=
	[items]::Item+
ItemSingle ::=
	[item]::Item
ItemStructure ::=
	ItemList
ItemStructure ::=
	ItemSingle
ItemStructure ::=
	ItemTable
ItemStructure ::=
	ItemTree
ItemTable ::=
	[rows]::Cluster+
ItemTree ::=
	[items]::Item+
Link ::=
	[relation]::Relationship [target]::DvToken
Locatable ::=
	Activity
Locatable ::=
	Attestation
Locatable ::=
	Composition
Locatable ::=
	ContentItem
Locatable ::=
	DataStructure
Locatable ::=
	Event
Locatable ::=
	EventContext
Locatable ::=
	Folder
Locatable ::=
	Item
Locatable ::=
	Location
Locatable ::=
	Party
Locatable ::=
	Relationship
Locatable ::=
	Role
Location ::=
	[details]::ItemStructure [description]::DvString [isPrimary]::DvBoolean
MetaDataEntry ::=
	[title]::string [contents]::string
MetaDataSet ::=
	[name]::string [entries]::MetaDataEntry+
MSK ::=
	ε
NA ::=
	ε
NASK ::=
	ε
NAV ::=
	ε
NI ::=
	INV
NI ::=
	MSK
NI ::=
	NA
NI ::=
	UNK
NI ::=
	INV
	MSK
	NA
	UNK
NINF ::=
	ε
NonHuman ::=
	[details]::ItemStructure
ObjectRef ::=
	EntityRef
ObjectRef ::=
	[uuid]::α [namespace]::α [objType]::α
Observation ::=
	[data]::History [state]::History
Ontology ::=
	[names]::string+ [internalVocabularies]::string+ [lookupTables]::string+ [terminologies]::string+ [generalEntries]::OntologyEntry+
OntologyEntry ::=
	[contents]::string+
Organization ::=
	[details]::ItemStructure
OTH ::=
	NINF
OTH ::=
	PINF
OTH ::=
	NINF
	PINF
Participation ::=
	[performer]::PartyProxy [function]::DvCodedString [mode]::DvCodedString [time]::DvTemporal
Party ::=
	Device
Party ::=
	Group
Party ::=
	NonHuman
Party ::=
	Organization
Party ::=
	Person
PartyIdentified ::=
	PartyRelated
PartyIdentified ::=
	[name]::DvString [identifiers]::DvIdentifier+
PartyProxy ::=
	PartyIdentified
PartyProxy ::=
	PartySelf
PartyRelated ::=
	[relationship]::Relationship
PartySelf ::=
	[externalRef]::EntityRef
Person ::=
	[details]::ItemStructure
PINF ::=
	ε
PointEvent ::=
	[time]::DvTemporal [data]::DvAny [state]::ItemStructure
QS ::=
	ε
ReferenceRange ::=
	[definition]::DvString [dataRange]::DvInterval
Relationship ::=
	[targets]::DvToken+
Role ::=
	[details]::ItemStructure [description]::DvString [isPrimary]::DvBoolean
Section ::=
	[items]::ContentItem+
Slot ::=
	[ccd]::DvToken [allowedCcds]::DvToken+
TRC ::=
	ε
UNC ::=
	ε
UNK ::=
	ASKR
UNK ::=
	ASKU
UNK ::=
	NASK
UNK ::=
	QS
UNK ::=
	TRC
UNK ::=
	ASKR
	ASKU
	NASK
	QS
	TRC

GrammarLabMaintained by Dr. Vadim Zaytsev a.k.a. @grammarware. Last updated in September 2015. []