Page 1 of 1
XML catalogs are not fully supported?
Posted: Wed Nov 19, 2003 12:08 pm
by Gia
1. My catalog has following entry:
<rewriteURI uriIdStartString="
http://schemas/m.1" rewritePrefix="file://C:/Work/Catalogs/A"/>
And my xsd has import schemaLocation="
http://schemas/m.1/base.xsd".
This works fine in xmlspy, but oxygen fails with the error "E schemas".
2. Another error: If instead of
http://schemas prefix I try to use something like MyProtocol:// (and map it in catalog), oxygen complains that it is an invalid value for schemaLocation anyURI type (which of course is not true).
Posted: Wed Nov 19, 2003 5:33 pm
by Mircea
Hi,
First your catalog file is not valid according with
http://www.oasis-open.org/committees/en ... atalog.dtd . The
rewriteURI element has an attribute
uriStartString and not
uriIdStartString, the later appears as an atribute for the
rewriteSystem element.
Another problem is the absolute file URI, please specify it as "file:///C:/Work/Catalog/A". Anyway I would recommend to use a relative URI and place your catalog file accordingly.
2. If you correct the catalog to be valid as I explained earlier you should be able to use without problems any protocol you like. Also please make sure you restart <oXygen/> after modifying the catalog entries or the catalog content.
Reagards,
Mircea.
Posted: Wed Nov 19, 2003 11:21 pm
by Gia Datuashvili
It's valid according to
http://www.oasis-open.org/committees/en ... atalog.xsd. And in that XSD the uriIdStartString is associated with rewriteURI. Looks like there is a conflict between DTD and XSD, and nobody has bothered to fix. That said, my catalog refers to XSD, and XmlSpy validates it according to XSD (so it expects uriIdStartString). Probably uriStartString is more correct though, since OASIS PDF refers to it more frequently.
Btw, we will probably generate catalog files dynamically from the make system, so A) we can do it differently for xmlspy/oxygen and B) use of absolute/relative paths in the catalog is not a maintenance problem.
However this brings me to question: can I pass the catalog file as a command line argument to oxygen?
Thanks for the help!
Posted: Thu Nov 20, 2003 10:43 am
by Mircea
Hi Gia,
We have no possibility to specify the catalog in command line. Any parameters that you are providing in the command line are interpreted as files to be opened.
The catalogs can be added through the Options -> Preferences menu.
However, if you are generating the catalog files dinamically from the make system, you can alter also the <oXygen/>'s options before starting it. If this is an interesting solution, please let me know and I will give you more details.
Best regards,
Mircea.