Extract Xml Values

A simple function to extract the vaue from XML tags
This example will extract the data between the <EMPFIRSTNAME> and
</EMPFIRSTNAME> XMLTags from the Bodytext string field that contains the full
XML definitions.

Aa very simple solution using a general purpose base function.

In your main code add the following

FirstName = GetXMLValue( BodyText , XMLtag )

Function GetXMLValue( SourceXML As String , XMLTag As String )
GetXMLValue = LSMiddle (SourceXML, "<" + XMLTag + ">" , "</" + XMLTag +
">" )
End Function

Function LSMiddle (st_fullString As String, st_startString As String,
st_endString As String) As String
'-This function was one of the LS String Manipulation functions previously
posted that '-performs the same function as the @Middle

Dim i_startPosition As Integer
Dim i_startLen As Integer
Dim i_endPosition As Integer

i_startPosition = Instr (st_fullString, st_startString)
i_startLen = Len ( st_startString )
If i_startPosition > 0 And st_startString <> "" Then

i_endPosition = Instr (Right$ ( st_fullString, Len ( st_fullString ) -
i_startPosition ) , st_endString )
If i_endPosition > 0 Then
LSMiddle = Mid$ ( st_fullString , i_startPosition + i_startLen , _
Instr ( i_startPosition + i_startLen, st_fullString, st_endString) - (
i_startPosition + i_startLen ) )
LSMiddle = Mid$ (st_fullString, Instr( st_fullString, st_startString) + Len
(st_startString) , Len (st_fullString))
End If

LSMiddle = ""
End If
End Function
This was first published in November 2000

Dig deeper on Domino Resources - Part 7



Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:




  • iSeries tutorials

    Search400.com's tutorials provide in-depth information on the iSeries. Our iSeries tutorials address areas you need to know about...

  • V6R1 upgrade planning checklist

    When upgrading to V6R1, make sure your software will be supported, your programs will function and the correct PTFs have been ...

  • Connecting multiple iSeries systems through DDM

    Working with databases over multiple iSeries systems can be simple when remotely connecting logical partitions with distributed ...