You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-dev@xerces.apache.org by Mukul Gandhi <ga...@gmail.com> on 2009/09/19 11:01:36 UTC
xpathDefaultNamespace implementation on xs:assert, with psychopath
Hi all,
We use PsychoPath XPath 2.0 engine, for XML Schema 1.1 assertions
in Xerces-J.
On xs:assert element, there is an attribute "xpathDefaultNamespace",
which is presently not implemented in Xerces-J.
I have started to implement it, and have made some progress. But I
bumped into a little problem, for which I need advise from xerces-dev
community.
The PsychoPath JAR which is presently available on Xerces-J SVN
repository (which is JRE 1.3 compliant), doesn't seem to have
provision for using the "xpathDefaultNamespace". So even if we write
an implementation of "xpathDefaultNamespace" for xs:assert in
Xerces-J, Xerces-J cannot get the desired result for
"xpathDefaultNamespace", from the current PsychoPath library available
on Xerces-J SVN repository. [1] Or to say, PsychoPath currently
doesn't have implementation for using "xpathDefaultNamespace" concept.
To solve this problem, PsychoPath also needs to improve, at
eclipse.org (which I'll try to do, with the PsychoPath team). The
current PsychoPath code base, which is available on eclipse.org has
changed a bit, and client side calls to invoke it have changed
slightly. PsychoPath team is also planning to do significant changes
to PsychoPath APIs in near future.
Here is an Eclipse WTP thread discussing PsychoPath API changes,
http://dev.eclipse.org/mhonarc/lists/wtp-wst-dev/msg00321.html.
If the PsychoPath APIs do change (and I think, they would change for
better), as described at the above mail thread (and some of them have
already changed), then for Xerces-J to take advantage of new
PsychoPath APIs, we need to change some code in Xerces-J as well
(which invokes PsychoPath; say in the Xerces-J class
AbstractPsychoPathImpl.java).
Also, to implement "xpathDefaultNamespace" for xs:assert, we cannot
implement it with current PsychoPath JAR available on Xerces-J SVN
repository, due to reasons I have described above. [1]
To be able to implement "xpathDefaultNamespace" attribute for
xs:assert, I propose to have a provision in Xerces-J, to allow users
to set say a system property, psychopath.optimize=true which will
allow users to select a newer PsychoPath version, available from
eclipse.org. By setting the property, psychopath.optimize=true
Xerces-J will delegate the PsychoPath calls to different portion of
the code (a separate class, or a method), which would allow users to
use the xs:assert "xpathDefaultNamespace" facility, and also allowing
users to be able to use the newer and improved PsychoPath APIs.
I shall appreciate your thoughts please, about this. After we get a
consensus here, I'll write the agreed upon code to interface with
PsychoPath, as mentioned in this mail, with necessary communication to
PsychoPath team as well.
--
Regards,
Mukul Gandhi
---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-dev-help@xerces.apache.org
Re: xpathDefaultNamespace implementation on xs:assert, with
psychopath
Posted by Mukul Gandhi <ga...@gmail.com>.
Hi all,
I wrote few blog posts reflecting recent changes, we did for
assertions and CTA. Here are the links, please:
http://mukulgandhi.blogspot.com/2009/09/xerces-j-xml-schema-11-assertions.html
(this has an example as well, for assertions xpathDefaultNamespace
usage)
http://mukulgandhi.blogspot.com/2009/09/xerces-j-xml-schema-11-conditional-type.html
I updated the Xerces wiki page somewhat, about assertions reflecting
the recent changes that we did (ref,
http://wiki.apache.org/xerces/XML_Schema_1.1_Assertions).
Comments and suggestions, are welcome please about these pages.
On Sat, Sep 19, 2009 at 10:30 PM, Mukul Gandhi <ga...@gmail.com> wrote:
> Hi all,
> Just solved this problem with PsychoPath running on JRE 1.3. I had a
> JRE 1.3 port of PsychoPath source code with me. I added a patch to
> PsychoPath locally, for xpathDefaultNamespace and created a JAR.
>
> I have committed the new PsychoPath JAR (complying to JRE 1.3 level)
> with xpathDefaultNamespace improvements, along with other Xerces-J
> changes, for assertions xpathDefaultNamespace functionality.
>
> Therefore I feel, the problem I described in this thread doesn't exist
> now. But any comments are welcome, please.
>
> It would be great, if anybody would like to test these improvements,
> and send any suggestions.
>
> I'll try to create few test cases, for assertions using
> xpathDefaultNamespace and post them somewhere (perhaps on Xerces
> wiki), over next few days.
>
> We also committed PsychoPath, xpathDefaultNamespace improvements on
> Eclipse WTP CVS site too (so, this should be part of the next Eclipse
> WTP release, as well).
--
Regards,
Mukul Gandhi
---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-dev-help@xerces.apache.org
Re: xpathDefaultNamespace implementation on xs:assert, with
psychopath
Posted by Mukul Gandhi <ga...@gmail.com>.
Hi all,
Just solved this problem with PsychoPath running on JRE 1.3. I had a
JRE 1.3 port of PsychoPath source code with me. I added a patch to
PsychoPath locally, for xpathDefaultNamespace and created a JAR.
I have committed the new PsychoPath JAR (complying to JRE 1.3 level)
with xpathDefaultNamespace improvements, along with other Xerces-J
changes, for assertions xpathDefaultNamespace functionality.
Therefore I feel, the problem I described in this thread doesn't exist
now. But any comments are welcome, please.
It would be great, if anybody would like to test these improvements,
and send any suggestions.
I'll try to create few test cases, for assertions using
xpathDefaultNamespace and post them somewhere (perhaps on Xerces
wiki), over next few days.
We also committed PsychoPath, xpathDefaultNamespace improvements on
Eclipse WTP CVS site too (so, this should be part of the next Eclipse
WTP release, as well).
On Sat, Sep 19, 2009 at 2:31 PM, Mukul Gandhi <ga...@gmail.com> wrote:
> Hi all,
> We use PsychoPath XPath 2.0 engine, for XML Schema 1.1 assertions
> in Xerces-J.
>
> On xs:assert element, there is an attribute "xpathDefaultNamespace",
> which is presently not implemented in Xerces-J.
>
> I have started to implement it, and have made some progress. But I
> bumped into a little problem, for which I need advise from xerces-dev
> community.
>
> The PsychoPath JAR which is presently available on Xerces-J SVN
> repository (which is JRE 1.3 compliant), doesn't seem to have
> provision for using the "xpathDefaultNamespace". So even if we write
> an implementation of "xpathDefaultNamespace" for xs:assert in
> Xerces-J, Xerces-J cannot get the desired result for
> "xpathDefaultNamespace", from the current PsychoPath library available
> on Xerces-J SVN repository. [1] Or to say, PsychoPath currently
> doesn't have implementation for using "xpathDefaultNamespace" concept.
>
> To solve this problem, PsychoPath also needs to improve, at
> eclipse.org (which I'll try to do, with the PsychoPath team). The
> current PsychoPath code base, which is available on eclipse.org has
> changed a bit, and client side calls to invoke it have changed
> slightly. PsychoPath team is also planning to do significant changes
> to PsychoPath APIs in near future.
>
> Here is an Eclipse WTP thread discussing PsychoPath API changes,
> http://dev.eclipse.org/mhonarc/lists/wtp-wst-dev/msg00321.html.
>
> If the PsychoPath APIs do change (and I think, they would change for
> better), as described at the above mail thread (and some of them have
> already changed), then for Xerces-J to take advantage of new
> PsychoPath APIs, we need to change some code in Xerces-J as well
> (which invokes PsychoPath; say in the Xerces-J class
> AbstractPsychoPathImpl.java).
>
> Also, to implement "xpathDefaultNamespace" for xs:assert, we cannot
> implement it with current PsychoPath JAR available on Xerces-J SVN
> repository, due to reasons I have described above. [1]
>
> To be able to implement "xpathDefaultNamespace" attribute for
> xs:assert, I propose to have a provision in Xerces-J, to allow users
> to set say a system property, psychopath.optimize=true which will
> allow users to select a newer PsychoPath version, available from
> eclipse.org. By setting the property, psychopath.optimize=true
> Xerces-J will delegate the PsychoPath calls to different portion of
> the code (a separate class, or a method), which would allow users to
> use the xs:assert "xpathDefaultNamespace" facility, and also allowing
> users to be able to use the newer and improved PsychoPath APIs.
>
> I shall appreciate your thoughts please, about this. After we get a
> consensus here, I'll write the agreed upon code to interface with
> PsychoPath, as mentioned in this mail, with necessary communication to
> PsychoPath team as well.
--
Regards,
Mukul Gandhi
---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-dev-help@xerces.apache.org
Re: xpathDefaultNamespace implementation on xs:assert, with
psychopath
Posted by Mukul Gandhi <ga...@gmail.com>.
On Sat, Sep 19, 2009 at 2:31 PM, Mukul Gandhi <ga...@gmail.com> wrote:
> To be able to implement "xpathDefaultNamespace" attribute for
> xs:assert, I propose to have a provision in Xerces-J, to allow users
> to set say a system property, psychopath.optimize=true which will
> allow users to select a newer PsychoPath version, available from
> eclipse.org.
xerces.xpath2.psychopath.optimize may be a better name of this
property. Any other suggestions for the name, please?
But we can decide about the naming of the property, after we finalize
the approach how this issue, needs to be addressed.
--
Regards,
Mukul Gandhi
---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-dev-help@xerces.apache.org