effect of psvi-required=true

I'm still thinking about the good question of Richard, about something Norm
said which was :
"Is it true that psvi-required=true, implies doing implicit schema
validation ?"

I remember Henri, pleasing that it was not the case...

But I think we have a problem here :

1) if it is true that it is doing implicit schema validation, how do the
implementation do access to those schema ?

2) if it is not true, how do you get a PSVI Infoset ?

I think of two principal use cases :

A) the user who NEEDS it's pipeline to be evalued in PSVI (so all the
validation step are there by design and it is probably designed to fail if
it is not psvi compatible), This user may need, if case a particular
component is not available in a psvi compatible form to use a p:choose

B) the user who propose two paths, one with PSVI, one without

For that we need
 * a function boolean p:psvi-required() : almost the one which was proposed
at the telcon and that I misunderstood, to say if the current context (it is
at the position of the evaluation), implies @psvi-required=true (with a
inheritence rule to be defined)
 * a function boolean p:step-psvi-aware(string step-type) : a slight
variation of what I proposed to ask if the a step type is psvi aware

For A) we should be clear in the spec that the user just has to put on the
top of the pipeline "@psvi-required=true" and she/he is ALMOST done
 She or he may need to use the function p:step-psvi-aware() to know if the
implementation he is using, handle psvi for a perticular step, to propose
another way to do the same thing

For B) we should be clear in the spec that the user need to make choose
based on the result of the function p:psvi-required()  to do extra
validation after some step if she/he wants to keep the PSVI along the line

I can just think of something like this

If psvi-required is know to be true then all of the following are true or
hold and catch fire

a) "7.2.6 p:validate-with-xml-schema" is a PSVI generator step and will
generate a result with PSVI
b) "7.1.30 p:xslt" if the stylesheet is in version 2.0 and there is no
version option set to 1.0, then it is a PSVI generator step and will use a
Schema Aware transformer and would do implicit validation *inside ot the
transformer* and would generate PSVI results
c) "7.2.9 p:xquery" is a PSVI generator step and will do implicit schema
validation *inside of the query processor* and would generate PSVI results

d) Some step MUST keep all the existing PSVI :
* 7.1.2 p:add-xml-base
* 7.1.10 p:identity
* 7.1.12 p:label-elements
* 7.1.22 p:split-sequence

Any other ideas

Mohamed
-- 
Innovimax SARL
Consulting, Training & XML Development
9, impasse des Orteaux
75020 Paris
Tel : +33 9 52 475787
Fax : +33 1 4356 1746
http://www.innovimax.fr
RCS Paris 488.018.631
SARL au capital de 10.000 €

Received on Saturday, 3 May 2008 07:55:04 UTC