Last active
August 29, 2015 14:16
-
-
Save achudars/983ef56813743b6eb8d1 to your computer and use it in GitHub Desktop.
IFML (IFML 1.0 Beta2) Emfatic file with all HTML5 events added as an extension
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@namespace(uri="top", prefix="top") | |
package top; | |
@namespace(uri="http://www.omg.org/spec/IFML", prefix="ifml") | |
package ifml { | |
@namespace(uri="http://www.omg.org/spec/IFML/ext", prefix="ext") | |
package extensions { | |
class Form extends core.ViewComponent { | |
!ordered ref SubmitEvent[*] submitEvent; | |
} | |
abstract class Field extends core.ViewComponentPart { | |
} | |
class SelectionField extends Field { | |
!ordered attr boolean[1] isMultiSelection; | |
} | |
class ValidationRule extends core.Constraint { | |
} | |
class Slot extends core.ViewComponentPart { | |
ref core.Parameter parameter; | |
} | |
class SortAttribute { | |
!ordered attr SortOrderEnum[1] order; | |
} | |
abstract class AbortEvent extends core.ViewElementEvent { | |
} | |
abstract class AutocompleteEvent extends core.ViewElementEvent { | |
} | |
abstract class AutocompleteerrorEvent extends core.ViewElementEvent { | |
} | |
abstract class BlurEvent extends core.ViewElementEvent { | |
} | |
abstract class CancelEvent extends core.ViewElementEvent { | |
} | |
abstract class CanplayEvent extends core.ViewElementEvent { | |
} | |
abstract class Canplaythrought extends core.ViewElementEvent { | |
} | |
abstract class ChangeEvent extends core.ViewElementEvent { | |
} | |
abstract class ClickEvent extends core.ViewElementEvent { | |
} | |
abstract class CloseEvent extends core.ViewElementEvent { | |
} | |
abstract class ContextmenuEvent extends core.ViewElementEvent { | |
} | |
abstract class CuechangeEvent extends core.ViewElementEvent { | |
} | |
abstract class DblclickEvent extends core.ViewElementEvent { | |
} | |
abstract class DragEvent extends core.ViewElementEvent { | |
} | |
abstract class DragendEvent extends core.ViewElementEvent { | |
} | |
abstract class DragenterEvent extends core.ViewElementEvent { | |
} | |
abstract class DragexitEvent extends core.ViewElementEvent { | |
} | |
abstract class DragleaveEvent extends core.ViewElementEvent { | |
} | |
abstract class DragoverEvent extends core.ViewElementEvent { | |
} | |
abstract class DragstartEvent extends core.ViewElementEvent { | |
} | |
abstract class DropEvent extends core.ViewElementEvent { | |
} | |
abstract class DurationchangeEvent extends core.ViewElementEvent { | |
} | |
abstract class EmptiedEvent extends core.ViewElementEvent { | |
} | |
abstract class EndedEvent extends core.ViewElementEvent { | |
} | |
abstract class ErrorEvent extends core.ViewElementEvent { | |
} | |
abstract class FocusEvent extends core.ViewElementEvent { | |
} | |
abstract class InputEvent extends core.ViewElementEvent { | |
} | |
abstract class InvalidEvent extends core.ViewElementEvent { | |
} | |
abstract class KeydownEvent extends core.ViewElementEvent { | |
} | |
abstract class KeypressEvent extends core.ViewElementEvent { | |
} | |
abstract class KeyupEvent extends core.ViewElementEvent { | |
} | |
abstract class LoadEvent extends core.ViewElementEvent { | |
} | |
abstract class LoadeddataEvent extends core.ViewElementEvent { | |
} | |
abstract class LoadedmetadataEvent extends core.ViewElementEvent { | |
} | |
abstract class LoadstartEvent extends core.ViewElementEvent { | |
} | |
abstract class MousedownEvent extends core.ViewElementEvent { | |
} | |
abstract class MouseenterEvent extends core.ViewElementEvent { | |
} | |
abstract class MouseleaveEvent extends core.ViewElementEvent { | |
} | |
abstract class MousemoveEvent extends core.ViewElementEvent { | |
} | |
abstract class MouseoutEvent extends core.ViewElementEvent { | |
} | |
abstract class MouseoverEvent extends core.ViewElementEvent { | |
} | |
abstract class MouseupEvent extends core.ViewElementEvent { | |
} | |
abstract class MousewheelEvent extends core.ViewElementEvent { | |
} | |
abstract class PauseEvent extends core.ViewElementEvent { | |
} | |
abstract class PlayEvent extends core.ViewElementEvent { | |
} | |
abstract class PlayingEvent extends core.ViewElementEvent { | |
} | |
abstract class ProgressEvent extends core.ViewElementEvent { | |
} | |
abstract class RatechangeEvent extends core.ViewElementEvent { | |
} | |
abstract class ResetEvent extends core.ViewElementEvent { | |
} | |
abstract class ResizeEvent extends core.ViewElementEvent { | |
} | |
abstract class ScrollEvent extends core.ViewElementEvent { | |
} | |
abstract class SeekedEvent extends core.ViewElementEvent { | |
} | |
abstract class SeekingEvent extends core.ViewElementEvent { | |
} | |
abstract class SelectEvent extends core.ViewElementEvent { | |
} | |
abstract class ShowEvent extends core.ViewElementEvent { | |
} | |
abstract class SortEvent extends core.ViewElementEvent { | |
} | |
abstract class StalledEvent extends core.ViewElementEvent { | |
} | |
abstract class SuspendEvent extends core.ViewElementEvent { | |
} | |
abstract class TimeupdateEvent extends core.ViewElementEvent { | |
} | |
abstract class ToggleEvent extends core.ViewElementEvent { | |
} | |
abstract class VolumechangeEvent extends core.ViewElementEvent { | |
} | |
abstract class WaitingEvent extends core.ViewElementEvent { | |
} | |
class List extends core.ViewComponent { | |
!ordered val SelectEvent[*] selectEvent; | |
ref SubmitEvent[*] submitEvent; | |
} | |
class SimpleField extends Field { | |
} | |
class SubmitEvent extends core.ViewElementEvent { | |
} | |
class Selector extends core.Expression, core.ViewComponentPart { | |
} | |
enum SortOrderEnum { | |
ascending = 0; | |
descending = 0; | |
} | |
class Device extends core.ContextDimension { | |
} | |
class Position extends core.ContextDimension { | |
} | |
class UserRole extends core.ContextDimension { | |
} | |
class Details extends core.ViewComponent { | |
} | |
class Window extends core.ViewContainer { | |
attr boolean isXor; | |
attr boolean isModal; | |
attr boolean isNew; | |
} | |
} | |
@namespace(uri="http://www.omg.org/spec/IFML/core", prefix="core") | |
package core { | |
class ViewPoint extends NamedElement { | |
!ordered val InteractionFlowModelElement[*] interactionFlowModelElements; | |
ref Context[1] context; | |
} | |
abstract class InteractionFlowElement extends NamedElement, InteractionFlowModelElement { | |
!ordered val Parameter[*] parameters; | |
!ordered val InteractionFlow[*] inInteractionFlows; | |
!ordered val InteractionFlow[*] outInteractionFlows; | |
} | |
class NavigationFlow extends InteractionFlow { | |
!ordered val DataFlow[*] dataFlows; | |
} | |
class ActionEvent extends Event { | |
} | |
class InteractionFlowModel extends NamedElement { | |
!ordered val InteractionFlowModelElement[*] interactionFlowModelElements; | |
} | |
class ParameterBindingGroup extends InteractionFlowModelElement { | |
!ordered val ParameterBinding[*] parameterBindings; | |
} | |
class ParameterBinding extends InteractionFlowModelElement { | |
!ordered val Parameter[1] sourceParameter; | |
!ordered val Parameter[1] targetParameter; | |
} | |
class ContentModel extends NamedElement { | |
ref uml.Element[*] elements; | |
} | |
class ViewElement extends InteractionFlowElement { | |
!ordered val ViewElementEvent[*] viewElementEvents; | |
!ordered val ActivationExpression activationExpression; | |
ref ViewContainer viewContainer; | |
} | |
class Action extends InteractionFlowElement { | |
!ordered val ActionEvent[*] actionEvents; | |
ref DynamicBehavior dynamicBehavior; | |
} | |
abstract class Element { | |
!ordered attr String[1] ~id; | |
!ordered val Constraint[*] constraints; | |
!ordered val Annotation[*] annotations; | |
} | |
class DynamicBehavior extends ContentBinding { | |
ref uml.BehavioralFeature behavioralFeature; | |
ref uml.Behavior behavior; | |
} | |
class DataFlow extends InteractionFlow { | |
} | |
abstract class InteractionFlow extends InteractionFlowModelElement { | |
!ordered val InteractionFlowElement[1] srcInteractionFlowElement; | |
!ordered val InteractionFlowElement[1] trgtInteractionFlowElement; | |
!ordered val ParameterBindingGroup parameterBindingGroup; | |
} | |
class ViewElementEvent extends Event { | |
} | |
abstract class InteractionFlowModelElement extends Element { | |
} | |
abstract class NamedElement extends Element { | |
!ordered attr String[1] name; | |
} | |
class ExternalEvent extends Event { | |
} | |
class Constraint extends BooleanExpression { | |
} | |
class ViewComponentPart extends InteractionFlowElement { | |
!ordered val ViewElementEvent[*] viewElementEvents; | |
!ordered val ActivationExpression activationExpression; | |
ref ViewComponentPart[*]#parentViewComponentPart subViewComponentParts; | |
ref ViewComponentPart[1]#subViewComponentParts parentViewComponentPart; | |
} | |
class ViewContainer extends ViewElement { | |
!ordered attr boolean[1] isLandMark; | |
!ordered attr boolean[1] isDefault; | |
!ordered val ViewElement[*] viewElements; | |
} | |
class IFMLModel extends NamedElement { | |
!ordered val InteractionFlowModel[1] interactionFlowModel; | |
!ordered val ContentModel[1] contentModel; | |
!ordered val ViewPoint[*] interactionFlowModelViewPoints; | |
} | |
class Event extends InteractionFlowElement { | |
!ordered val ActivationExpression activationExpression; | |
!ordered val NavigationFlow[*] navigationFlows; | |
!ordered val InteractionFlowExpression interactionFlowExpression; | |
} | |
abstract class ContentBinding extends ViewComponentPart { | |
attr String uniformResourceIdentifier; | |
} | |
class InteractionFlowExpression extends Expression { | |
!ordered val InteractionFlow[+] interactionFlows; | |
} | |
class DataBinding extends ContentBinding { | |
ref ConditionalExpression[*] conditionalExpression; | |
ref VisualizationAttribute[*] visualizationAttributes; | |
ref uml.Classifier[1] classifier; | |
} | |
class ViewComponent extends ViewElement { | |
val ViewComponentPart[*] viewComponentParts; | |
} | |
class SystemEvent extends Event { | |
!ordered val Expression[+] triggeringExpressions; | |
!ordered attr SystemEventTypeEnum[1] type; | |
} | |
class BooleanExpression extends Expression { | |
} | |
class ActivationExpression extends BooleanExpression { | |
} | |
abstract class Expression extends InteractionFlowModelElement { | |
!ordered attr String[1] language; | |
!ordered attr String[1] body; | |
} | |
class Parameter extends InteractionFlowModelElement, uml.MultiplicityElement, uml.TypedElement, NamedElement { | |
!ordered attr ParameterKind[1] kind = "ordinary"; | |
} | |
enum SystemEventTypeEnum { | |
time = 0; | |
specialCondition = 0; | |
} | |
class ConditionalExpression extends Expression, ViewComponentPart { | |
} | |
class Context extends Element { | |
ref ContextDimension[*] contextDimensions; | |
} | |
class ContextDimension extends NamedElement { | |
} | |
class VisualizationAttribute extends ViewComponentPart { | |
ref uml.StructuralFeature structuralFeature; | |
} | |
enum ParameterKind { | |
ordinary = 0; | |
input = 0; | |
output = 0; | |
input_output = 0; | |
} | |
class Module extends InteractionFlowModelElement { | |
ref Port[+] inputPorts; | |
ref Port[+] outputPorts; | |
ref InteractionFlowModelElement[+] interactionFlowModelElements; | |
} | |
class Port extends InteractionFlowElement { | |
} | |
class Annotation { | |
attr String text; | |
} | |
} | |
} | |
@namespace(uri="http://www.omg.org/spec/UML", prefix="uml") | |
package uml { | |
class Association extends Element { | |
} | |
class Classifier extends Element { | |
} | |
class Element { | |
} | |
class BehavioralFeature { | |
} | |
class Behavior { | |
} | |
class TemplaetableElement extends Element { | |
} | |
class TypedElement extends Element { | |
} | |
class MultiplicityElement extends Element { | |
} | |
class StructuralFeature { | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment