Re: Unknown prefix xml?

Martin Gudgin wrote:
> 
> Just to be sure... You are saying I have to put
> 
>     xmlns:xml='http://www.w3.org/XML/1998/namespace'
> 
> in my schema document? 

Yes.

> That seems very weird. The xml namespace prefix is always in scope, why
> should I have to declare it. 

My take on this is that W3C XML Schema is trying to kill 2 birds with a
single declaration.

When you write xmlns:foo="http://bar" in a schema, you do 2 different
things:

1) you declare a namespace prefix per the namespaces in XML 1.0 rec
that, most of the time, you will not use as a namespace prefix.

2) you declare to the schema processor that you will be using the prefix
'foo' inside W3C XML Schema attributes to identify the namespace
"http://bar".

The xml namespace prefix is always in your scope per the namespace rec
to perform 1), but not ins your scope to perform 2).

> MSXML sees this as an error, complaing that the prefix xml is invalid.
> Xerces and Oracle accept it. Either way it doesn't solve my problem. A modified schema with the
> above declaration still gives the same error[3]

I am confused with your schema. It has no global element definition...
Is it intended to be included in another one ? Otherwise I don't see
which instance document can be validated ? Could you provide one ?

Eric
 
> Gudge
> 
> [3] http://marting.develop.com/xsd/xmlspace.mod.xsd
> 
> ----- Original Message -----
> From: "Eric van der Vlist" <vdv@dyomedea.com>
> To: "Martin Gudgin" <marting@develop.com>
> Cc: "XML Schema Dev" <xmlschema-dev@w3.org>
> Sent: Monday, January 29, 2001 9:27 AM
> Subject: Re: Unknown prefix xml?
> 
> > Martin Gudgin wrote:
> > >
> > > I'm getting an 'attribute type check failed for {None}:ref: xml:space has undeclared prefix:
> xml'
> > > error using XSV1.1a with the schema at[1]. Full XSV output is at[2].
> > >
> > > I don't *think* I should have to declare the xml prefix inside my schema, should I?
> >
> > Yes you have ;=) ...
> >
> > You need to define its namespace as
> > "http://www.w3.org/XML/1998/namespace".
> >
> > You don't **need** to specify a schame location for this namespace since
> > a schema validator will find a schema for this namespace by
> > dereferencing the URI.
> >
> > If you don't specify a schema location, it will mean though that your
> > schema processor will perform an access to this location each time it
> > validates the schema (unless it's using a cache).
> >
> > Erix
> >
> > > Gudge
> > >
> > > [1] http://marting.develop.com/xsd/xmlspace.xsd
> > > [2] http://marting.develop.com/xsd/xmlspace.err.xml
> >
> > --
> > ------------------------------------------------------------------------
> > Eric van der Vlist       Dyomedea                    http://dyomedea.com
> > http://xmlfr.org         http://4xt.org              http://ducotede.com
> > ------------------------------------------------------------------------

-- 
------------------------------------------------------------------------
Eric van der Vlist       Dyomedea                    http://dyomedea.com
http://xmlfr.org         http://4xt.org              http://ducotede.com
------------------------------------------------------------------------

Received on Monday, 29 January 2001 06:06:29 UTC