[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: [entity-resolution-comment] XML Catalog DTD Customization Problems
Dear Committee Members,
AS I plan to package the XML Catalog DTD and spec for the Debian
GNU/Linux distribution, I felt I should point this out:
I added support for the full OASIS TR9401:97 semantics to the
(non-normative) dtd for the new OASIS XML Catalog spec, but I was
unable to do it without editing the 'catalog.dtd' document.
I was able to construct a customization layer by adding a
'local.catalog.class' parameter entity to catalog.dtd, immediately
following the local.catalog.attribs parameter entity:
<!ENTITY % local.catalog.attribs "">
+ <!ENTITY % local.catalog.class "">
Would it make sense for the OASIS version of the catalog.dtd to define
such a parameter entity for this purpose?
If I'm mistaken and a customization layer can be used without the
introduction of such a parameter entity, I'd appreciate some help as
to how this might nbe accomplished.
Also, following John Cowan's lead, I used 'soc' as the namespace
prefix for "urn:oasis:names:tc:entity:xmlns:tr9401:catalog"
The customization layer I use is included immediately following my
signature.
It is also on the web at:
http://globaltranscorp.org/oasis/catalog/xml/tr9401.dtd
Thanks,
Mark
_____________________________________
Mark Johnson <mark@duke.edu>
Debian SGML <mrj@debian.org>
Home Page: <http://dulug.duke.edu/~mark/>
GPG fp: 50DF A22D 5119 3485 E9E4 89B2 BCBC B2C8 2BE2 FE81
<!-- $Id: tr9401.dtd,v 0.9 2001/08/28 15:19:31 mrj Exp $ -->
<!--
This dtd is a customization layer that provides additional elements
to the (Non-Normative) OASIS XML Catalog Standard DTD to support the
full semantics of the OASIS TR9401:97 Catalog Standard.
Specifically, it adds the following elements to the DTD:
'doctype' 'document' 'dtddecl' 'entity'
'linktype' 'notation' 'sgmldecl'
As recommended by the XML Catalog Standard, these additional elements
are implemented as extension elements in the namespace:
"urn:oasis:names:tc:entity:xmlns:tr9401:catalog"
using the "soc:" namespace prefix.
The (Non-Normative) DTD for the OASIS XML Catalog is available at
http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd
The OASIS XML Catalog Standard is available at
http://www.oasis-open.org/committees/entity/spec.html
Usage:
This dtd is identified by the following:
PUBLIC "-//GlobalTransCorp//DTD XML Catalog V1.0-Based Extension V0.9//EN"
SYSTEM "http://globaltranscorp.org/oasis/catalog/xml/tr9401.dtd"
A typical document instance might use the following DOCTYPE statement:
<!DOCTYPE catalog
PUBLIC "-//GlobalTransCorp//DTD Entity Resolution XML Catalog V1.0-Based Extension V0.9//EN"
"http://globaltranscorp.org/oasis/catalog/xml/tr9401.dtd">
Comments or complaints should be sent to Mark Johnson <mrj@debian.org>
-->
<!ENTITY % nspre "soc:">
<!ENTITY % nspre-s ":soc">
<!ENTITY % ns-dec "xmlns%nspre-s;">
<!ENTITY % uriReference "CDATA">
<!ENTITY % doctype "%nspre;doctype">
<!ENTITY % document "%nspre;document">
<!ENTITY % dtddecl "%nspre;dtddecl">
<!ENTITY % entity "%nspre;entity">
<!ENTITY % linktype "%nspre;linktype">
<!ENTITY % notation "%nspre;notation">
<!ENTITY % sgmldecl "%nspre;sgmldecl">
<!ENTITY % local.catalog.attribs "%ns-dec; %uriReference; #FIXED
'urn:oasis:names:tc:entity:xmlns:tr9401:catalog'">
<!ENTITY % local.catalog.class "|%doctype;|%document;|%dtddecl;
|%entity;|%linktype;
|%notation;|%sgmldecl;">
<!ENTITY % catalog.dtd PUBLIC "-//GlobalTransCorp//DTD XML Catalog V1.0//EN"
"catalog.dtd">
<!-- "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd"> -->
%catalog.dtd;
<!-- Below are the new elements -->
<!ELEMENT %doctype; EMPTY>
<!ATTLIST %doctype;
id ID #IMPLIED
name CDATA #REQUIRED
uri %uriReference; #REQUIRED
xml:base %uriReference; #IMPLIED
>
<!ELEMENT %document; EMPTY>
<!ATTLIST %document;
id ID #IMPLIED
uri %uriReference; #REQUIRED
xml:base %uriReference; #IMPLIED
>
<!ELEMENT %dtddecl; EMPTY>
<!ATTLIST %dtddecl;
id ID #IMPLIED
publicId %publicIdentifier; #REQUIRED
uri %uriReference; #REQUIRED
xml:base %uriReference; #IMPLIED
>
<!ELEMENT %entity; EMPTY>
<!ATTLIST %entity;
id ID #IMPLIED
name CDATA #REQUIRED
uri %uriReference; #REQUIRED
xml:base %uriReference; #IMPLIED
>
<!ELEMENT %linktype; EMPTY>
<!ATTLIST %linktype;
id ID #IMPLIED
name CDATA #REQUIRED
uri %uriReference; #REQUIRED
xml:base %uriReference; #IMPLIED
>
<!ELEMENT %notation; EMPTY>
<!ATTLIST %notation;
id ID #IMPLIED
name CDATA #REQUIRED
uri %uriReference; #REQUIRED
xml:base %uriReference; #IMPLIED
>
<!ELEMENT %sgmldecl; EMPTY>
<!ATTLIST %sgmldecl;
id ID #IMPLIED
uri %uriReference; #REQUIRED
xml:base %uriReference; #IMPLIED
>
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC