====== SelectionBase (What is it?)======
The [[en:kommunikation:nachrichten:selectionbase|SelectionBase]] is a "super" class that eBiss uses to hold all the details of a message in memory. Parts of this information are first determined for an incoming message at the receiving channel or backendobjectReceiver. Then later when applying the [[en:prozessdefinition:jobs:jobsteps:allgemein:entityanalyzer|]]. Different complex types and data elements are populated at different times.
Access to the [[en:kommunikation:nachrichten:selectionbase|SelectionBase]]
can be used in the process context to use the [[en:prozessdefinition:jobs:beispiele:messageselector|MessageSelector]] Messages according to specific filter criteria via [[wp>XPath]] Selections((Quasi analogous to [[en:transformation:mappings:start|]]!)).
The [[kommunikation:nachrichten:selectionbase|SelectionBase]] branches to:
- /SelectionBase/InputMessages
- /SelectionBase/OutputMessages
Here, message details of **messages thrown** against a job are in the **/SelectionBase/InputMessages** path, while **messages generated** within a job are instantiated in the **/SelectionBase/OutputMessages** path.
**Example:** boolean check if the((InputMessages)) message going to the job is a document with entity type "Document". Message contains a Document with entity type "Edifact.Slsrpt.D96A"....
/SelectionBase/InputMessages/Documents/EntityType/@Name = "Edifact.Slsrpt.D96A"
{{:images:sign_warning.png?nolink|}}**Note:** It allows e.g. a [[en:howtos:alternative_zum_entityselector|Alternative Select]]((for managed file transfer tasks we usually don't need type definitions and associated repositories. Therefore, selective message processing with the otherwise common [[en:prozessdefinition:jobs:jobsteps:allgemein:entityselector|]] mechanism cannot be applied)) of messages without the otherwise used [[en:prozessdefinition:jobs:jobsteps:allgemein:entityselector|]].
{{:images:sign_warning.png?nolink|}}**Note:** Using the [[en:transformation:mappings:funktionen:allgemein:getmessageasselectionbase|GetMessageAsSelectionBase()]] function, messages or the [[wp>XPath]] Selections be debugged in a suitable mapping.
{{:images:sign_warning.png?nolink|}}**Note:** In the [[howtos:mft|]] Context, the SelectionBase can also be applied to file information determined from a receive channel to the message.
The file information is stored in the path /SelectionBase/InputMessages/Attachments
and therefore e.g. the filename can be evaluated with:
/SelectionBase/InputMessages/Attachments/@Filename
.
{{:images:sign_warning.png?nolink|}}**Note:** The [[en:kommunikation:nachrichten:selectionbase|SelectionBase]] cannot be accessed in a [[en:prozessdefinition:jobs:jobsteps:allgemein:entityifcase|]] because the [[en:prozessdefinition:jobs:jobsteps:allgemein:entityifcase|]] objects can only be applied after a [[en:prozessdefinition:jobs:jobsteps:allgemein:entityloader|]] and therefore they only see the document context.