The XML Catalog specification can be found here:
http://www.oasis-open.org/committees/entity/specs/cs-entity-xml-catalogs-1.0.html
Yes, I tried to digest it, without much luck. There seems to be a lot
of circular definition, such as: "The system entry indicates that an
entity manager must use the associated URI reference to locate the
replacement text for an entity with the specified /system identifier/."
I'm still unclear what the "system" term is referring to. I'm hoping
for a layman's "use the uri tag /here/, the public tag /here/, and the
system tag /here/ ..." The extension point description doesn't seem to
help me much in this regard. It *seems* to me that public and system
are pre-XML Schema terms, and since we are not having to deal with
anything other than schemas re: JPA (and I should note that my pre-XML
Schema knowledge is ... absent), I might be able to safely ignore those.
One thing to keep in mind is that a Namespace isn't necessarily a
resolvable web location. It's just a unique identifier for a set of
elements. DTDs have no concept of a namespace it only pertains to
XML Schemas and the XML Namespace specification if an XML Parser
implements it.
http://www.w3.org/TR/REC-xml-names/
The above is a link to the namespace specification. In particular,
you can't take an XML Schema that has a targetnamespace specified as
http://www.foo.org/foo.xsd and have an xml file that has a namespace
of http://www.foo.org/foo and have the XML validate correctly against
the specification. The namespace in the XML file has to match up
with the namespace in the XSD.
So, targetnamespace in the schemas has to match a corresponding
namespace in the XML file. So doing the proposed redirection
wouldn't work.
I understand that a namespace does not equal (necessarily) the web
location for a schema. Perhaps I didn't word my example quite
accurately. In my example, the plugin provider maps the web location
"http://www.foo.org/foo.xsd" to the local location "schemas/foo.xsd"
(just as done in org.eclipse.jst/wst.standard.schemas), so that
documents that specify the schema location using the web address are
redirected to the local schema instead. And the user maps the namespace
"http://www.foo.org/foo" (which *is* the namespace declared in the
schema document) to the web location "http://www.foo.org/foo.xsd" in her
preferences, so that documents which have no schema location, but which
use that namespace, are redirected to the web location for the schema.
My question is if this is theoretically possible within WTP (knowing
that I cannot currently map a namespace to a web-based URI schema
location), and whether or not it is then possible to redirect the user's
redirection (which would normally be to the web location) to the *local*
schema location, which has already been provided for her by the plugin
provider (i.e. namespace -> web location -> local location) without her
having to download a second copy of the schema for her own personal use.
Thanks,
Paul Fullbright
Oracle Corp.
Eclipse Dali/Java Persistence Tools Development
[EMAIL PROTECTED]
Paul Fullbright wrote:
One additional question: is it possible (either for a plugin
provider or for a user) to map a namespace to a /web location/ of a
schema? Relatedly, is it possible to map a namespace to a web
location, which itself is then mapped to a local location, perhaps in
an existing plugin? (for example, plugin provider provides a local
schema foo.xsd, for which he adds the xml catalog entry
"http://www.foo.org/foo.xsd" -> "schemas/foo.xsd".
_______________________________________________
wtp-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/wtp-dev
_______________________________________________
wtp-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/wtp-dev