2002/ws/desc/wsdl20 altschemalangs.xml,NONE,1.1

Update of /sources/public/2002/ws/desc/wsdl20
In directory homer:/tmp/cvs-serv1334

Added Files:
	altschemalangs.xml 
Log Message:
Document from Bijan

--- NEW FILE: altschemalangs.xml ---
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE spec PUBLIC "-//W3C//DTD Specification V2.2//EN" "http://www.w3.org/2002/xmlspec/dtd/2.2/xmlspec.dtd">
<!--
/*
 * Copyright (c) 2003 World Wide Web Consortium,
 *
 * (Massachusetts Institute of Technology, European Research Consortium for
 * Informatics and Mathematics, Keio University). All Rights Reserved. This
 * work is distributed under the W3C(r) Document License [1] in the hope that
 * it will be useful, but WITHOUT ANY WARRANTY; without even the implied
 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * [1] http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231
 */
 -->
 <!-- $Id: altschemalangs.xml,v 1.1 2005/03/16 16:45:00 hugo Exp $ -->
 <?xml-stylesheet type='text/xsl' href='xmlspec-wsdl.xsl' ?>
<spec xmlns:xlink="http://www.w3.org/1999/xlink" w3c-doctype="wgnote" role="public">
    <header>
        <title>Web Services Description Language (WSDL): Alternative Schema Languages Support</title>
        <w3c-designation>http://www.w3.org/TR/2005/@@</w3c-designation>
        <w3c-doctype></w3c-doctype>
        <pubdate>
            <day></day>
            <month></month>
            <year></year>
        </pubdate>
        <publoc>
            <loc href="http://www.w3.org/TR/2004/WD-wsdl20-20040803" xlink:type="simple"
                xlink:show="replace" xlink:actuate="onRequest"
                >http://www.w3.org/TR/2005/@@</loc>
        </publoc>
        <altlocs>
            <!--<loc role="postscript" href="wsdl20.ps" xlink:type="simple" xlink:show="replace"
                xlink:actuate="onRequest">postscript</loc>
            <loc role="pdf" href="wsdl20.pdf" xlink:type="simple" xlink:show="replace"
                xlink:actuate="onRequest">PDF</loc>
            <loc role="xml" href="wsdl20.xml" xlink:type="simple" xlink:show="replace"
                xlink:actuate="onRequest">XML</loc>
            <loc role="plain" href="wsdl20.txt" xlink:type="simple" xlink:show="replace"
                xlink:actuate="onRequest">plain text</loc>-->
        </altlocs>
        <prevlocs>
            <!--<loc href="http://www.w3.org/TR/2004/WD-wsdl20-20040326" xlink:type="simple"
                xlink:show="replace" xlink:actuate="onRequest"
                >http://www.w3.org/TR/2004/WD-wsdl20-20040326</loc>-->
        </prevlocs>
        <latestloc>
            <!--<loc href="http://www.w3.org/TR/wsdl20" xlink:type="simple" xlink:show="replace"
                xlink:actuate="onRequest">http://www.w3.org/TR/wsdl20</loc>-->
        </latestloc>
        <authlist>
            <author>
                <name>...</name>
                <affiliation>...</affiliation>
            </author>
            <author>
                <name>Bijan Parsia</name>
                <affiliation>Maryland Information and Network Dynamics Laboratory at the University
                    of Maryland at College Park</affiliation>
            </author>  
            <author>
                <name>...</name>
                <affiliation>...</affiliation>
            </author>
        </authlist>
        <abstract id="Abstract">
            <p></p>
        </abstract>
        <status id="Status">
            <p>
                <emph>This section describes the status of this document at the time of its
                    publication. Other documents may supersede this document. A list of current W3C
                    publications and the latest revision of this technical report can be found in
                    the <loc href="http://www.w3.org/TR/" xlink:type="simple" xlink:show="replace"
                        xlink:actuate="onRequest">W3C technical reports index</loc> at
                    http://www.w3.org/TR/.</emph>
            </p>
        </status>
    </header>
    <body>
        <div1 id="intro">
            <head>Introduction</head>
        </div1>
        
        <div1 id="examples">
            <head>Examples of Specifications of Extension Elements for Alternative Schema Language
                Support.</head>
            <div2 id="dtd">
                <head>DTD</head>
                <p>A DTD may be used as the schema language for WSDL. It may not be embedded; it
                    must be imported. A namespace must be assigned. DTD types appear in the {element
                    declarations} property of <specref ref="Definitions_details"/> and may be
                    referenced from the <el>wsdl:input</el>, <el>wsdl:output</el> and
                    <el>wsdl:fault</el> elements using the <att>element</att>
                    <emph>attribute information item</emph>.</p>
                <p> The prefix, dtd, used throughout the following is mapped to the namespace URI
                        <attval>http://www.example.org/dtd/</attval>.</p>
                <p> The <el>dtd:import</el>
                    <emph>element information item</emph> references an external Document Type
                    Definition, and has the following infoset properties:</p>
                <ulist>
                    <item>
                        <p>A [local name] of import.</p>
                    </item>
                    <item>
                        <p>A [namespace name] of "http://www.example.org/dtd".</p>
                    </item>
                    <item>
                        <p>One or two <emph>attribute information item</emph>s, as follows:</p>
                        <ulist>
                            <item>
                                <p>A REQUIRED <att>namespace</att>
                                    <emph>attribute information item</emph> as described below.</p>
                            </item>
                            <item>
                                <p>An OPTIONAL <att>location</att>
                                    <emph>attribute information item</emph> as described below.</p>
                            </item>
                        </ulist>
                    </item>
                </ulist>
                <div3 id="dtd-namespaceaii">
                    <head>
                        <att>namespace</att>
                        <emph>attribute information item</emph>
                    </head>
                    <p>The <att>namespace</att>
                        <emph>attribute information item</emph> sets the namespace to be used with
                        all imported element definitions described in the DTD. It has the following
                        infoset properties:</p>
                    <ulist>
                        <item>
                            <p>A [local name] of namespace.</p>
                        </item>
                        <item>
                            <p>A [namespace name] which has no value.</p>
                        </item>
                    </ulist>
                    <p>The type of the <att>namespace</att>
                        <emph>attribute information item</emph> is <emph>xs:anyURI</emph>.</p>
                    <p>The WSDL author should ensure that a prefix is associated with the namespace
                        at the proper scope (probably document scope).</p>
                </div3>
                <div3 id="dtd-locationaii">
                    <head>
                        <att>location</att>
                        <emph>attribute information item</emph>
                    </head>
                    <p>The <att>location</att>
                        <emph>attribute information item</emph>, if present, provides a hint to the
                        processor as to where the DTD may be located. Caching and cataloging
                        technologies may provide better information than this hint. The
                            <att>location</att>
                        <emph>attribute information item</emph> has the following infoset
                        properties:</p>
                    <ulist>
                        <item>
                            <p>A [local name] of location.</p>
                        </item>
                        <item>
                            <p>A [namespace name] which has no value.</p>
                        </item>
                    </ulist>
                    <p>The type of the <att>location</att>
                        <emph>attribute information item</emph> is <emph>xs:anyURI</emph>.</p>
                </div3>
                <div3 id="dtd-ref">
                    <head>References to Element Definitions</head>
                    <p> The <att>element</att>
                        <emph>attribute information item</emph> MUST be used when referring to an
                        element definition (&lt;!ELEMENT&gt;) from a Message Reference
                        component; referring to an element definition from a Interface Fault
                        component is similar. The value of the element definition MUST correspond to
                        the content of the <att>namespace</att>
                        <emph>attribute information item</emph> of the <el>dtd:import</el>
                        <emph>element information item</emph>. The local name part must correspond
                        to an element defined in the DTD. </p>
                    <p> Note that this pattern does not attempt to make DTDs namespace-aware. It
                        applies namespaces externally, in the import phase.</p>
                </div3>
            </div2>
            <div2 id="relax">
                <head>RELAX NG</head>
                <p>A RELAX NG schema may be used as the schema language for WSDL. It may be embedded
                    or imported; import is preferred. A namespace must be specified; if an imported
                    schema specifies one, then the [actual value] of the <att>namespace</att>
                    <emph>attribute information item</emph> in the <el>import</el>
                    <emph>element information item</emph> must match the specified namespace. RELAX
                    NG provides both type definitions and element declarations, the latter appears
                    in the {element declarations} property of <specref ref="Definitions_details"/>
                    respectively. The following discussion supplies the prefix rng which is mapped
                    to the URI "http://www.relaxng.org/ns/structure/1.0".</p>
                <div3 id="import-relax">
                    <head>Importing RELAX NG</head>
                    <p> Importing a RELAX NG schema uses the rng:include mechanism defined by RNG,
                        with restrictions on its syntax and semantics. A child <emph>element
                            information item</emph> of the <el>types</el>
                        <emph>element information item</emph> is defined with the Infoset properties
                        as follows:</p>
                    <ulist>
                        <item>
                            <p>A [local name] of include.</p>
                        </item>
                        <item>
                            <p>A [namespace name] of "http://www.relaxng.org/ns/structure/1.0".</p>
                        </item>
                        <item>
                            <p>Two <emph>attribute information item</emph>s as follows:</p>
                            <ulist>
                                <item>
                                    <p>A REQUIRED <att>ns</att>
                                        <emph>attribute information item</emph> as described
                                    below.</p>
                                </item>
                                <item>
                                    <p>An OPTIONAL <att>href</att>
                                        <emph>attribute information item</emph> as described
                                    below.</p>
                                </item>
                                <item>
                                    <p>Additional <emph>attribute information item</emph>s as
                                        defined by the RNG specification.</p>
                                </item>
                            </ulist>
                        </item>
                    </ulist>
                    <p> Note that WSDL restricts the <el>rng:include</el>
                        <emph>element information item</emph> to be empty. That is, it cannot
                        redefine <el>rng:start</el> and <el>rng:define</el>
                        <emph>element information item</emph>s; it may be used solely to import a
                        schema.</p>
                    <div4 id="relax-import-nsaii">
                        <head>
                            <att>ns</att>
                            <emph>attribute information item</emph>
                        </head>
                        <p>The <att>ns</att>
                            <emph>attribute information item</emph> defines the namespace of the
                            type and element definitions imported from the referenced schema. If the
                            referenced schema contains an <att>ns</att>
                            <emph>attribute information item</emph> on its <el>grammar</el>
                            <emph>element information item</emph>, then the values of these two
                                <emph>attribute information item</emph>s must be identical. If the
                            imported grammar does not have an <att>ns</att>
                            <emph>attribute information item</emph> then the namespace specified
                            here is applied to all components of the schema as if it did contain
                            such an <emph>attribute information item</emph>. The <att>ns</att>
                            <emph>attribute information item</emph> contains the following Infoset
                            properties:</p>
                        <ulist>
                            <item>
                                <p>A [local name] of ns.</p>
                            </item>
                            <item>
                                <p>A [namespace name] which has no value.</p>
                            </item>
                        </ulist>
                        <p>The type of the <att>ns</att>
                            <emph>attribute information item</emph> is <emph>xs:anyURI</emph>.</p>
                    </div4>
                    <div4 id="relax-import-hrefaii">
                        <head>
                            <att>href</att>
                            <emph>attribute information item</emph>
                        </head>
                        <p> The <att>href</att>
                            <emph>attribute information item</emph> must be present, according to
                            the rules of the RNG specification. However, WSDL allows it to be empty,
                            and considers it only a hint. Caching and cataloging technologies may
                            provide better information that this hint. The <att>href</att>
                            <emph>attribute information item</emph> has the following Infoset
                            properties:</p>
                        <ulist>
                            <item>
                                <p>A [local name] of href.</p>
                            </item>
                            <item>
                                <p>A [namespace name] which has no value.</p>
                            </item>
                        </ulist>
                        <p>The type of the <att>href</att>
                            <emph>attribute information item</emph> is <emph>xs:anyURI</emph>.</p>
                    </div4>
                </div3>
                <div3 id="relax-embed">
                    <head>Embedding RELAX NG</head>
                    <p> Embedding an RNG schema uses the existing top-level <el>rng:grammar</el>
                        <emph>element information item</emph>. It may be viewed as simply cutting
                        and pasting an existing, stand-alone schema to a location inside the
                            <el>wsdl:types</el>
                        <emph>element information item</emph>. The <el>rng:grammar</el>
                        <emph>element information item</emph> has the following Infoset properties:</p>
                    <ulist>
                        <item>
                            <p>A [local name] of grammar.</p>
                        </item>
                        <item>
                            <p>A [namespace name] of "http://www.relaxng.org/ns/structure/1.0".</p>
                        </item>
                        <item>
                            <p>A REQUIRED <att>ns</att>
                                <emph>attribute information item</emph>s as described below.</p>
                        </item>
                        <item>
                            <p>Additional <emph>attribute information item</emph>s as specified for
                                the <el>rng:grammar</el>
                                <emph>element information item</emph> in the RNG specification.</p>
                        </item>
                        <item>
                            <p>Child <emph>element information item</emph>s as specified for the
                                    <el>rng:grammar</el>
                                <emph>element information item</emph> in the RNG specification.</p>
                        </item>
                    </ulist>
                    <div4 id="relax-embed-nsaii">
                        <head>
                            <att>ns</att>
                            <emph>attribute information item</emph>
                        </head>
                        <p> The <att>ns</att>
                            <emph>attribute information item</emph> defines the namespace of the
                            type and element definitions embedded in this schema. WSDL modifies the
                            RNG definition of the <el>rng:grammar</el>
                            <emph>element information item</emph> to make this <emph>attribute
                                information item</emph> required. The <att>ns</att>
                            <emph>attribute information item</emph> has the following infoset
                            properties:</p>
                        <ulist>
                            <item>
                                <p>A [local name] of ns.</p>
                            </item>
                            <item>
                                <p>A [namespace name] which has no value.</p>
                            </item>
                        </ulist>
                        <p>The type of the <att>ns</att>
                            <emph>attribute information item</emph> is <emph>xs:anyURI</emph>.</p>
                    </div4>
                </div3>
                <div3 id="relax-ref">
                    <head>References to Element Declarations</head>
                    <p>Whether embedded or imported, the element definitions present in a schema may
                        be referenced from a Message Reference or Interface Fault component.</p>
                    <p> A named rng:define definition MUST NOT be referenced from the Message
                        Reference or Interface Fault components. </p>
                    <p> A named Relax NG element declaration MAY be referenced from a Message
                        Reference or Interface Fault component. The QName is constructed from the
                        namespace (<att>ns</att>
                        <emph>attribute information item</emph>) of the schema and the content of
                        the <att>name</att>
                        <emph>attribute information item</emph> of the <el>element</el>
                        <emph>element information item</emph> An <att>element</att>
                        <emph>attribute information item</emph> MUST NOT be used to refer to an
                            <el>rng:define</el>
                        <emph>element information item</emph>. </p>
                </div3>
            </div2>
        </div1>
    </body>
</spec>

Received on Wednesday, 16 March 2005 16:45:03 UTC