Re: declare-step type

/ ht@inf.ed.ac.uk (Henry S. Thompson) was heard to say:
| Norman Walsh writes:
|
|> I think this will prove to be (at least tangentially) related to the
|> discussion of the names of steps.
|>
|> I propose that the type attribute of declare-step be interpreted with
|> XSLT semantics: that is, if the lexical value does not include a colon
|> then the name is in no namespace.
|
| Why?  What's wrong with writing:
|
| <p:pipeline-library xmlns="http://www.example.com/specialSteps">
|
|   <p:declare-step type="foo">
|     <p:input port="source/">
|     <p:output port="result"/>
|   </p:declare-step>
|
|   <p:declare-step type="bar">
|     <p:input port="source/">
|     <p:input port="otherstuff/">
|     <p:output port="result"/>
|   </p:declare-step>
|
| </p:pipeline-library>
|
| Seems an obvious sort of thing to do. . .

Only if you think that it's obvious that the namespace of the name in
the type attribute comes from the default namespace if the name has no
prefix. That's what W3C XML Schema users will probably expect. It is
not what XSLT users will probably expect.

Given the choice, I'd rather do what the XSLT users expect, but there's
pretty clearly no technically right answer here.

On the other hand, given that we've adopted a namespace attribute on
p:pipeline-library so that:

  <p:pipeline-library namespace="http://example.org/">
    <p:pipeline name="foo">
      ...
    </p:pipeline>
  </p:pipeline-library>

defines a pipeline that we can call as a step like this:

  <ex:foo xmlns:ex="http://example.org/">

maybe we've already decided to be consistent with Schema and not XSLT.

I think that's a mistake, but I seem to be in the minority.

|> I further propose that we declare it an error to declare a type in no
|> namespace.
|
| I guess. . . 

                                        Be seeing you,
                                          norm

-- 
Norman Walsh
XML Standards Architect
Sun Microsystems, Inc.

Received on Wednesday, 21 March 2007 12:22:38 UTC