Add a child object to the current one.

        Checks the contained_children list to make sure that the object
        is allowable, and throws an exception if not.

def add_child(self, child):
        """Add a child object to the current one.

        Checks the contained_children list to make sure that the object
        is allowable, and throws an exception if not.
        """
        if child.tag in self.contained_children:
            self.children.append(child)
        else:
            raise UNTLStructureException(
                'Invalid child "%s" for parent "%s"' % (
                    child.tag,
                    self.tag
                )
            )