
Hi, In the catalog for the XML Spec framework, one can read the following rule (that's actually the only rule): <rewriteSystem systemIdStartString="http://www.w3.org/XML/1998/06/" rewritePrefix="./"/> While in the DTD (it seems all other schemas have been generated from the DTD,) there is the following statement: TYPICAL INVOCATION: # <!DOCTYPE spec PUBLIC # "-//W3C//DTD Specification V2.10//EN" # "http://www.w3.org/2002/xmlspec/dtd/2.10/xmlspec.dtd"> So I wonder if the URIs are actually in sync. Shouldn't the catalog contain instead the following rule: <rewriteSystem systemIdStartString="http://www.w3.org/2002/xmlspec/dtd/2.10/" rewritePrefix="./"/> Besides this point, if I am right, rewriteSystem is not suitable for stylesheet URI resolution. So shouldn't we have to add the corresponding rewriteURI rule too? (whatever the URI actually is) Regards, -- Florent Georges http://www.fgeorges.org/

Hello, That rewriteSystem element maps the reference to xmlspec.rng from the sample XML file of type XMLSpec to the local version stored in frameworks/xmlspec/schema. If you create a new XML document from the XMLSpec template you see the reference: <?oxygen RNGSchema="http://www.w3.org/XML/1998/06/schema/xmlspec.rng" type="xml"?> The local schema is: frameworks/xmlspec/schema/xmlspec.rng If only the predefined scenarios of the document type XMLSpec are used then you do not need to add uri or rewriteURI elements because the predefined scenarios use the paths ${frameworks}/xmlspec/fo/xmlspec.xsl, ${frameworks}/xmlspec/html/xmlspec.xsl, etc. If you want to use other references in your stylesheet you can add uri entries to the XML catalog. Regards, Sorin Florent Georges wrote:
Hi,
In the catalog for the XML Spec framework, one can read the following rule (that's actually the only rule):
<rewriteSystem systemIdStartString="http://www.w3.org/XML/1998/06/" rewritePrefix="./"/>
While in the DTD (it seems all other schemas have been generated from the DTD,) there is the following statement:
TYPICAL INVOCATION: # <!DOCTYPE spec PUBLIC # "-//W3C//DTD Specification V2.10//EN" # "http://www.w3.org/2002/xmlspec/dtd/2.10/xmlspec.dtd">
So I wonder if the URIs are actually in sync. Shouldn't the catalog contain instead the following rule:
<rewriteSystem systemIdStartString="http://www.w3.org/2002/xmlspec/dtd/2.10/" rewritePrefix="./"/>
Besides this point, if I am right, rewriteSystem is not suitable for stylesheet URI resolution. So shouldn't we have to add the corresponding rewriteURI rule too? (whatever the URI actually is)
Regards,

Sorin Ristache wrote:
That rewriteSystem element maps the reference to xmlspec.rng from the sample XML file of type XMLSpec to the local version stored in frameworks/xmlspec/schema. If you create a new XML document from the XMLSpec template you see the reference:
<?oxygen RNGSchema="http://www.w3.org/XML/1998/06/schema/xmlspec.rng" type="xml"?>
Yes, but my point is that I think this URI is wrong, as the DTD tells us that: TYPICAL INVOCATION: # <!DOCTYPE spec PUBLIC # "-//W3C//DTD Specification V2.10//EN" # "http://www.w3.org/2002/xmlspec/dtd/2.10/xmlspec.dtd"> So I guess the URI 2002 (as opposed to 1998 that is used in oXygen) is the correct one, isn't it?
If only the predefined scenarios of the document type XMLSpec are used then you do not need to add uri or rewriteURI elements because the predefined scenarios use the paths ${frameworks}/xmlspec/fo/xmlspec.xsl, ${frameworks}/xmlspec/html/xmlspec.xsl, etc. If you want to use other references in your stylesheet you can add uri entries to the XML catalog.
Yep, but I wonder if a framework shouldn't provide it out of the box. Writing a driver stylesheet is very common (a stylesheet module that imports the original one to override some templates or parameters.) And in that case, the import URI cannot use ${frameworks}. Regards, -- Florent Georges http://www.fgeorges.org/

Hello, In the next version we will add the DTD and the XML Schema for XML Spec to the predefined document type and we will add the XML catalog mappings for the stylesheets stored on the W3C website. Thank you for the suggestion, Sorin Florent Georges wrote:
Yes, but my point is that I think this URI is wrong, as the DTD tells us that:
TYPICAL INVOCATION: # <!DOCTYPE spec PUBLIC # "-//W3C//DTD Specification V2.10//EN" # "http://www.w3.org/2002/xmlspec/dtd/2.10/xmlspec.dtd">
So I guess the URI 2002 (as opposed to 1998 that is used in oXygen) is the correct one, isn't it?
Yep, but I wonder if a framework shouldn't provide it out of the box. Writing a driver stylesheet is very common (a stylesheet module that imports the original one to override some templates or parameters.) And in that case, the import URI cannot use ${frameworks}.
participants (2)
-
Florent Georges
-
Sorin Ristache