Skip to main content


class EnsLib.EDI.SEF.Compiler extends EnsLib.EDI.SEF.MaskNavigator

This is the SEF Compiler. For each transaction set defined in the SEF file, a parser will be generated that can import and validate documents which conform to that transaction set specification

Property Inventory

Method Inventory


property CatOnly as %Boolean;
Property methods: CatOnlyDisplayToLogical(), CatOnlyGet(), CatOnlyIsValid(), CatOnlyLogicalToDisplay(), CatOnlyNormalize(), CatOnlySet()
property CompositeModifierStack as EnsLib.EDI.SEF.Util.Stack;
This holds the CompositeOrdinalModifier stack
Property methods: CompositeModifierStackGet(), CompositeModifierStackGetSwizzled(), CompositeModifierStackIsValid(), CompositeModifierStackNewObject(), CompositeModifierStackSet()
property DocKey as %String;
This holds the key derived from parsing a document
Property methods: DocKeyDisplayToLogical(), DocKeyGet(), DocKeyIsValid(), DocKeyLogicalToDisplay(), DocKeyLogicalToOdbc(), DocKeyNormalize(), DocKeySet()
property LoopStack as EnsLib.EDI.SEF.Util.Stack;
This holds the LoopStack for map resolution
Property methods: LoopStackGet(), LoopStackGetSwizzled(), LoopStackIsValid(), LoopStackNewObject(), LoopStackSet()
property SegmentModifierStack as EnsLib.EDI.SEF.Util.Stack;
This holds the SegmentOrdinalModifier stack
Property methods: SegmentModifierStackGet(), SegmentModifierStackGetSwizzled(), SegmentModifierStackIsValid(), SegmentModifierStackNewObject(), SegmentModifierStackSet()
property SetName as %String;
This holds the current set name
Property methods: SetNameDisplayToLogical(), SetNameGet(), SetNameIsValid(), SetNameLogicalToDisplay(), SetNameLogicalToOdbc(), SetNameNormalize(), SetNameSet()
property State as %String [ MultiDimensional ];
This holds the State for map resolution
Property methods: StateDisplayToLogical(), StateGet(), StateIsValid(), StateLogicalToDisplay(), StateLogicalToOdbc(), StateNormalize(), StateSet()
property StructureIndex as %Integer [ InitialExpression = 0 ];
This holds the current structure index
Property methods: StructureIndexDisplayToLogical(), StructureIndexGet(), StructureIndexIsValid(), StructureIndexLogicalToDisplay(), StructureIndexNormalize(), StructureIndexSet()


method AddDescriptor(pType As %String, pDescriptor As %String, Output pDescriptorIndex As %Integer)
This adds a descriptor to the master descriptor for a particular Doc/Set
method Compile(pFilename As %String, pFamily As %String, Output pCategory As %String, Output pValidationErrors As %String, pUseOld As %Boolean) as %Status
This method imports the specified SEF file, parsing and generating descriptors which are used to drive the SEF Parser.
classmethod CreateShortName(pDesc As %String) as %String
Given a element/composite description, generate an short-form name
classmethod GetImportCategory(pFilename As %String) as %String
This retrieves the import category from a file without further compilation
classmethod Import(pFiles As %String, pFamily As %String = "X12", Output pCategoryImported As %String, Output pValidationErrors As %String, pUseOld As %Boolean) as %Status
Load a set of SEF files. Give just the filename (without the .SEF extension) if in the standard location, otherwise the full path with ".SEF".
method InitState(pIndex As %Integer, pType As %String, pStructure As %String) as %Status
Given structure index, structure type and structure, intialize state
method Initialize() as %Status
Put Compiler into the initial state, ready to generate set descriptors
method ParseDocument(pFilename As %String, pFamily As %String, Output pCategory As %String, Output pDocument As EnsLib.EDI.SEF.Document) as %Status
method UpdateDescriptor(pIndex As %Integer, pPieceNumber As %Integer, pValue As %String)
method buildSchemaMap(pDocTypeCategory As %String, pDocTypeName As %String) as %Status
Returns the Schema structure, showing sequence and hierarchy of segments

Inherited Members

Inherited Properties

Inherited Methods

FeedbackOpens in a new tab