def write_parts(zip)
      p = parts
      p.each do |part|
        unless part[:doc].nil?
          zip.put_next_entry(zip_entry_for_part(part))
          part[:doc].to_xml_string(zip)
        end
        unless part[:path].nil?
          zip.put_next_entry(zip_entry_for_part(part))
          zip.write IO.read(part[:path])
        end
      end
      zip
    end
Writes the package parts to a zip archive.
@param [Zip::OutputStream] zip
@return [Zip::OutputStream]