<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        color:black;
        mso-fareast-language:EN-US;}
code
        {mso-style-priority:99;
        font-family:"Courier New";}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;
        mso-fareast-language:EN-AU;}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;
        color:black;
        mso-fareast-language:EN-AU;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;}
span.EmailStyle23
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle24
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body bgcolor=white lang=EN-AU link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal><a name="_MailEndCompose"><span style='color:windowtext'>Thanks Pavol,<o:p></o:p></span></a></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'>It is now working.  I also realised that it wasn’t matching because of an issue with the DOB script, once I removed the logging and the return statement it started working.<o:p></o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'>The script now looks like:<o:p></o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'><</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;background:silver;mso-highlight:silver;mso-fareast-language:EN-AU'>q:equal</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>      </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>    </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'><</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>q:path</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>extension/<u>dob</u></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'></</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>q:path</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>    </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'><</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>c:expression</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>       </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'><</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>script</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>          </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'><</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>language</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>http://midpoint.evolveum.com/xml/ns/public/expression/language#Groovy</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'></</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>language</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>          </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'><</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>code</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>            DoB = basic.getAttributeValue(shadow, 'http://midpoint.evolveum.com/xml/ns/public/resource/instance-3', 'DoB')</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>                             </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>           (d,m,y) = DoB?.<u>tokenize</u>('/')</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>            y + '-' + m + '-' + d</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>          </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'></</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>code</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>       </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'></</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>script</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal style='text-autospace:none'><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;mso-fareast-language:EN-AU'>   </span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'></</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;mso-fareast-language:EN-AU'>c:expression</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:windowtext;mso-fareast-language:EN-AU'><o:p></o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'></</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F;background:silver;mso-highlight:silver;mso-fareast-language:EN-AU'>q:equal</span></span><span style='mso-bookmark:_MailEndCompose'><span style='font-size:10.0pt;font-family:Consolas;color:teal;mso-fareast-language:EN-AU'>></span></span><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p></o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'>Should I not use a return statement within a script?<o:p></o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'>Regards,<o:p></o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'>Brad<o:p></o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><p class=MsoNormal><span style='mso-bookmark:_MailEndCompose'><span style='color:windowtext'><o:p> </o:p></span></span></p><span style='mso-bookmark:_MailEndCompose'></span><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US style='color:windowtext;mso-fareast-language:EN-AU'>From:</span></b><span lang=EN-US style='color:windowtext;mso-fareast-language:EN-AU'> midPoint [mailto:midpoint-bounces@lists.evolveum.com] <b>On Behalf Of </b>Pavol Mederly<br><b>Sent:</b> Monday, 13 March 2017 10:26 PM<br><b>To:</b> midpoint@lists.evolveum.com<br><b>Subject:</b> Re: [midPoint] Correlation query problem<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><p>Hello Brad,<span style='font-size:12.0pt;mso-fareast-language:EN-AU'><o:p></o:p></span></p><p>normIgnoreCase is OK, because givenName and lastName are so called polystrings (polymorphic strings; they have original and normalized value). And these are to be compared using polyStringNorm, polyStringOrig, polyStringStrict, normIgnoreCase, origIgnoreCase, and strictIgnoreCase rules. (Just BTW, polyStringNorm comparison is already case-insensitive, so I'd suggest using it instead of normIgnoreCase. The latter is a bit of "hack". But nevertheless, it should work.)<o:p></o:p></p><p>Your query look right to me.<o:p></o:p></p><p>I would suggest you to enable logging: TRACE for <tt><span style='font-size:10.0pt'>com.evolveum.midpoint.model.impl.sync.CorrelationConfirmationEvaluator</span></tt>.<o:p></o:p></p><p>And then have a look for entry containing:<o:p></o:p></p><p><tt><span style='font-size:10.0pt'>SYNCHRONIZATION: CORRELATION: expression for results in filter</span></tt><o:p></o:p></p><p>If needed, you could post it here, we'll try to help you with that.<o:p></o:p></p><p>Best regards,<o:p></o:p></p><pre>Pavol Mederly<o:p></o:p></pre><pre>Software developer<o:p></o:p></pre><pre>evolveum.com<o:p></o:p></pre><div><p class=MsoNormal>On 13.03.2017 12:21, Brad Fardig wrote:<o:p></o:p></p></div><blockquote style='margin-top:5.0pt;margin-bottom:5.0pt'><p class=MsoNormal>Having some issues with a correlation query on a csv resource with midpoint 3.4<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>The issue is I’m not getting any linking with existing user records i.e. all records read from the CSV file are unmatched.<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>I need to do case insensitive string matching.  I’ve tried stringIgnoreCase but receive an error.  I’ve also set the <code><span style='font-size:10.0pt'><a href="http://prism.evolveum.com/xml/ns/public/matching-rule-3">http://prism.evolveum.com/xml/ns/public/matching-rule-3</a></span></code> namespace as mr  but receive an error for mr:stringIgnoreCase as well<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>I’ve tried various selection from the known matching rules here: <a href="https://wiki.evolveum.com/display/midPoint/Matching+Rules">https://wiki.evolveum.com/display/midPoint/Matching+Rules</a><o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>If anybody can provide any insight into what I’m not seeing/doing it will be greatly appreciated.<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>The query is:<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>         </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>correlation</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>            </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:description</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                       match on givenName == FirstName , familyName == LastName , DoB == <u>dob</u></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>               </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:description</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>              </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:and</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                     </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:equal</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                      </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:matching</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><code><span style='font-size:10.0pt'>normIgnoreCase</span></code><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:matching</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><span style='font-size:10.0pt;font-family:Consolas'>familyName</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:expression</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                     </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><span style='font-size:10.0pt;font-family:Consolas'>$c:account/c:attributes/ri:LastName</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:expression</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>               </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:equal</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                        </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:equal</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                              </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:matching</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><code><span style='font-size:10.0pt'>normIgnoreCase</span></code><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:matching</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><span style='font-size:10.0pt;font-family:Consolas'>givenName</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:expression</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                     </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><span style='font-size:10.0pt;font-family:Consolas'>$c:account/c:attributes/ri:FirstName</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:expression</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>               </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:equal</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>               </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:equal</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><span style='font-size:10.0pt;font-family:Consolas'>extension/<u>dob</u></span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:path</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:expression</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                     </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>script</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                        </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>language</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><span style='font-size:10.0pt;font-family:Consolas'><a href="http://midpoint.evolveum.com/xml/ns/public/expression/language#Groovy">http://midpoint.evolveum.com/xml/ns/public/expression/language#Groovy</a></span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>language</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                        </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'><</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>code</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                             DoB = basic.getAttributeValue(shadow, '<a href="http://midpoint.evolveum.com/xml/ns/public/resource/instance-3">http://midpoint.evolveum.com/xml/ns/public/resource/instance-3</a>', 'DoB')</span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                             </span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                             (d,m,y) = DoB?.<u>tokenize</u>('/')</span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                             <u>db</u> = y + '-' + m + '-' + d</span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                            log.error('The date of birth is {}', <u>db</u>)</span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                            return <u>db</u></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                         </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>code</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                     </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>script</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>                  </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>c:expression</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>               </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:equal</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:10.0pt;font-family:Consolas'>             </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>q:and</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:Consolas'>         </span><span style='font-size:10.0pt;font-family:Consolas;color:teal'></</span><span style='font-size:10.0pt;font-family:Consolas;color:#3F7F7F'>correlation</span><span style='font-size:10.0pt;font-family:Consolas;color:teal'>></span><o:p></o:p></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:Consolas;color:teal'> </span><o:p></o:p></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:Consolas;color:teal'> </span><o:p></o:p></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:Consolas;color:teal'>Regards</span><o:p></o:p></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:Consolas;color:teal'> </span><o:p></o:p></p><p class=MsoNormal><span style='font-size:10.0pt;font-family:Consolas;color:teal'>Brad</span><o:p></o:p></p><p class=MsoNormal><span style='font-size:12.0pt;font-family:"Times New Roman",serif;mso-fareast-language:EN-AU'><br><br><br><o:p></o:p></span></p><pre>_______________________________________________<o:p></o:p></pre><pre>midPoint mailing list<o:p></o:p></pre><pre><a href="mailto:midPoint@lists.evolveum.com">midPoint@lists.evolveum.com</a><o:p></o:p></pre><pre><a href="http://lists.evolveum.com/mailman/listinfo/midpoint">http://lists.evolveum.com/mailman/listinfo/midpoint</a><o:p></o:p></pre></blockquote><p class=MsoNormal><span style='font-size:12.0pt;font-family:"Times New Roman",serif;mso-fareast-language:EN-AU'><br><br><br><i>This email, and any attachment, is confidential and also privileged. If you have received it in error, please notify me immediately and delete it from your system along with any attachments. You should not copy or use it for any purpose, nor disclose its contents to any other person. </i><o:p></o:p></span></p></div></body></html>