Re: new draft of Zip/Unzip Note

On 5 August 2013 09:59, Toman, Vojtech <vojtech.toman@emc.com> wrote:
> Good work. Here are some of my immediate comments:

comments embedded below;

> 3. p:zip
>
> - "update: will add files to the existing archive. When a manifest is provided will add non-existing new files, only if it has been modified more recently than the version already in the zip archive. This will also add files to an archive that do not exist previously."
>
> Personally, I am not comfortable with the "if it has been modified more recently than the version already in the zip archive" bit. Does it mean that the processor will need to keep timestamps for the data flowing through the pipeline?
>

agreed, I think we need to make explicit that data flowing through the
pipe is current-dateTime() eg always newer.

> - If I understand it correctly, there is no "manifest" input port anymore in p:zip; the manifest (in the form of c:* documents) can be passed through the "source" input port.

yes for the sake of making it easy to do simple things, it felt overly
tedious to have a manifest port. I experimented removing it and it
seemed (in my impl tests) to simplify things vastly.

>   - I would like to see an example of how manifest entries can be matched with the input documents (for example, to apply different serialization options to different documents)
>   - The "regular" and "c:*" documents can be mixed freely on the "source" port. Does it mean that the p:zip step has to first collect all input documents (and cache them) until it has collected the complete manifest information and knows what to do with the input documents?
>   - How can I put a c:* document into the zip archive?

there is an example of this in example section

>   - Can I just p:pipe some dynamically created data into the ZIP without a corresponding manifest entry?

yes

>   - I think the description of the manifest needs to be clearer.

agreed, I did throw this over the wall to start getting some movement on it.

> - Various "It is an error if ..." - which error?
>
> - The description of the step should say something like: "The p:zip operates on a ZIP archive. it returns a manifest document describing..." It took me quite some time to see what the step actually returns.
>

ack

> -----
>
> 4. p:unzip
>
> - The "result" output port is non-sequential. Is that correct? What if I pass a c:archive input document to extract multiple files? (Is that possible?)
>
yes, there is an ex in example section

> - "it is a dynamic error" - which error?

ack

>
> -----
>
> Example 5.13:
>
> - How do you imagine <p:document href="file:///var/html/mydoczip.zip"/> to work?

same as data flowing through pipeline, file uri in zip heuristics kick in

thx for the comments, will take what you have said and regenerate a
new version of the doc.

J

Received on Monday, 5 August 2013 10:46:07 UTC