- From: <ovisvana@netzero.net>
- Date: Thu, 11 May 2006 09:48:06 GMT
- To: xmlschema-dev@w3.org
- Message-Id: <20060511.024806.13564.1189369@webmail28.lax.untd.com>
Hi,
As a matter of fact, it is common practice to embed a schema within a soap message in a document style webservice. This is sometimes necessary as in a document style webservice, the message is a document as opposed to a request/response mechanism that is built in to the rpc style webservice.
cheers,
ovisvana
http://www.bonanzasoft.com
-- noah_mendelsohn@us.ibm.com wrote:
> > By the way, we are also sometimes asked why you can't have
> > the equivalent of a DTD internal subset, I.e. putting a
> > schema fragment in the XML file but outside of the document
> > element tree, and the answer is similar: XML is not
> > extensible in that way either. The only "schema" language
> > that can be embedded as an internal subset in an XML document
> > is a DTD.
>
> I've never seen anything in the spec that stops you embedding a schema
> document within the source document to be validated, and referring to it
as
> say xsi:noNamespaceSchemaLocation="#schema". Where is this rule?
I didn't say there was something that prevents you from embedding a schema
within the source tree to be validated. As you say, it can be done,
though there might be some ambiguity about whether a given processor will
honor the location hint as you propose. Indeed, people do this
occasionally and it's sometimes useful.
What I did say is that you can't put a schema where the internal subset
is, which is outside of the tree of elements. When the schema is in the
element tree, then it becomes part of the logical content of the document.
If you're validating from the root, then the schema has to validate or at
least allow for its own presence. If you write another schema, perhaps in
RelaxNG or or Schematron, then that too has to allow for the presence of
the xsd:schema element. So, my point was that you have with DTDs an
important ability to put your constraints where I believe they properly
belong, which is as metadata for the element tree rather than as part of
it.
Altogther, I'm less enthusiastic about including schemas in content than
some other people seem to be. I do agree that there are certain specific
scenarios, particularly when the root is some sort of container such as a
SOAP envelope, where it can make sense. In general, if I have some
application-specific XML tree such as an encoded work of music, a purchase
order, etc., then I'm not convinced that an xsd:schema logically belongs
as a descendent of the root element.
--------------------------------------
Noah Mendelsohn
IBM Corporation
One Rogers Street
Cambridge, MA 02142
1-617-693-4036
--------------------------------------
_____________________________________________________________________
Call Anyone, Anytime, Anywhere in the World - FREE!
Free Internet calling from NetZero Voice
Visit http://www.netzerovoice.com today!
Received on Thursday, 11 May 2006 14:33:17 UTC