Query XML without namespace I can query XML, which has defined xmlns tag with common table expression

DECLARE @XML XML

SET @XML = 
'&lt;NodeA xmlns="https://XYZ.xsd"&gt;
&lt;NodeB verzePis=""&gt;
    &lt;NodeC1 attrA="Hello" /&gt;
    &lt;NodeC2 attrA="World" /&gt;
  &lt;/NodeB&gt;
&lt;/NodeA&gt;
'

;WITH XMLNAMESPACES(DEFAULT 'https://XYZ.xsd')

    SELECT
        r.value('fn:local-name(.)', 'nvarchar(50)') as SectionName,
        r.value('@attrA','NVARCHAR(250)') attrA
    FROM    @XML.nodes('/NodeA/NodeB/*') AS t(r);


But what if source XML does not contain any xmlns tag ? 
How can i workaround missing namespace ?
You can just remove the WITH XMLNAMESPACES(DEFAULT 'https://XYZ.xsd') part:

DECLARE @XML XML

SET @XML = 
'&lt;NodeA&gt;
&lt;NodeB verzePis=""&gt;
    &lt;NodeC1 attrA="Hello" /&gt;
    &lt;NodeC2 attrA="World" /&gt;
  &lt;/NodeB&gt;
&lt;/NodeA&gt;
'

;--WITH XMLNAMESPACES(DEFAULT 'https://XYZ.xsd')

    SELECT
        r.value('fn:local-name(.)', 'nvarchar(50)') as SectionName,
        r.value('@attrA','NVARCHAR(250)') attrA
    FROM    @XML.nodes('/NodeA/NodeB/*') AS t(r);


produces

+-------------+-------+
| SectionName | attrA |
+-------------+-------+
| NodeC1      | Hello |
| NodeC2      | World |
+-------------+-------+


Please note, WITH XMLNAMESPACES does not create a common table expression, it just declares an optional namespace