XMLElement
    XML元素

    XMLAttribute
    XML元素中的属性

    XMLCharacters
    XML元素文本区域的字符串,不包含内嵌的XML元素
    CodeQL Java XML.png

    1. from XMLElement sqlElement, string sql
    2. where
    3. sqlElement.getAttribute("id").getValue() = "updateIgnoreNullParams" and
    4. sql = concat(XMLCharacters characters |
    5. characters = sqlElement.getAChild*().getACharactersSet()
    6. |
    7. characters.toString().regexpReplaceAll("\\s+", " ") order by characters.getLocation().getStartLine())
    8. select sqlElement, sql

    image.png
    select与下面地order bycreated_time desc属于同一个child,属于两个characterSet。
    当子元素是include元素时,使用子元素的位置
    当子元素时其他的时,使用characters的位置
    image.png