xsl-list
[Top] [All Lists]

Re: [xsl] XML Schema 1.0 files

2013-03-28 02:24:42
Thanks Mike,
   Quite comprehensive.

On 27/03/13 22:54, Michael Kay wrote:
In general, extracting information from schema documents using XSLT is
difficult, unless you are prepared to make assumptions and
approximations - for example, you might be prepared to ignore the impact
of xs:redefine, or the risk of finding xs:element declarations within an
xs:documentation element.

In this case I think you can get a reasonable answer fairly easily. If
you find an <xs:element name="N"> then the namespace in question is one
of the following:

(a) if parent::xs:schema then ../@targetNamespace if present, else ""

(b) otherwise, if normalize-space(@form)="qualified" or empty(@form) and
normalize-space(ancestor::xs:schema/@elementFormDefault)="qualified",
then ancestor::xs:schema/@targetNamespace if present, else ""

(c) otherwise, ""

I think this caters for most possibilities; an exception is chameleon
include where the declarations in a schema document acquire the target
namespace of the including schema document.


I know the chameleon 'method' is used, but am prepared to accept problems from that. Since I'm file based I have no option (other than
to assume the 'parent' including file targetNamespace.

Also that redefine isn't used.

Thanks.



regards

--
Dave Pawson
XSLT XSL-FO FAQ.
http://www.dpawson.co.uk

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>