Pugixml - Analysiert den Namespace mit Präfixzuordnung und ohne Präfixzuordnung

Ich habe eine Client-Anwendung, die XML-Antworten analysiert, die von 2 verschiedenen Servern gesendet werden. Ich nenne sie Server A und Server B.

Server A antwortet auf eine der Anforderungen mit der folgenden Antwort:

<?xml version="1.0" encoding="UTF-8"?>
    <D:multistatus xmlns:D="DAV:">
    <D:response>
    <D:href>/T12.txt</D:href>
    <D:propstat>
    <D:prop>
    <local-modification-time xmlns="urn:abc.com:webdrive">1389692809</local-modification-time>
    </D:prop>

    <D:status>HTTP/1.1 200 OK</D:status>

    </D:propstat>
</D:response>
</D:multistatus>

Server B antwortet auf eine der Anforderungen mit der folgenden Antwort:

<?xml version="1.0" encoding="UTF-8"?>
    <D:multistatus xmlns:D="DAV:">
    <D:response>
    <D:href>/T12.txt</D:href>
    <D:propstat>
    <D:prop>
    <O:local-modification-time xmlns:O="urn:abc.com:webdrive">1389692809</O:local-modification-time>
    </D:prop>

    <D:status>HTTP/1.1 200 OK</D:status>

    </D:propstat>
</D:response>
</D:multistatus>

Wenn Sie den Unterschied zwischen den beiden Servern beobachten, sendet ServerA keine Zuordnung zwischen Namespace und Präfix, ServerB hingegen (siehe Tag für lokale Änderungszeit). Wie kann ich eine generische Client-Parsing-Logik schreiben, um diese beiden Szenarien generisch zu behandeln? Jeder Beispielcode wäre eine große Hilfe.

Vielen Dank

Antworten auf die Frage(1)

Ihre Antwort auf die Frage