Parsing and data presentation in Django
Using a generator function gives you some flexibility.  You don't have to create a list.

def generate_documents( document_nodes ):

    for document in document_nodes:
        # create a MockDocument for each item returned by the API
        document_object = MockDocument()    
        for field in document:
            # store the corresponding fields as object attributes
            if field.tag == "something":
                document.something = field.text
        yield  document_object 


You can do this of the list object is somehow important.

document_objects = list( generate_documents( document_nodes ) )


Or, more usefully, this

for d in generate_documents( document_nodes ):
    ... process the document ...


Which never actually creates a list object.