Are there standard namespaces that don't need URIs?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Grant Robertson

    #1

    Are there standard namespaces that don't need URIs?

    As I am learning about XML I seen that xmlns is used with a colon after
    it as if it were a namespace itself. However, I have never seen a URI
    given for it. Is "xmlns" a sort of predefined word in that all XML
    software just knows what it means without it needing a URI?

    Are there any more of these special words that need no definition within
    any schema? I know there are other special words like "element" and
    "targetNamespac e" but these seem to be defined within the XML Schema
    schema definition. It seems that only "xmlns" must be known before
    anything else can be known.

    Am I totally missing the boat on this or what?
  • Martin Honnen

    #2
    Re: Are there standard namespaces that don't need URIs?

    Grant Robertson wrote:
    As I am learning about XML I seen that xmlns is used with a colon after
    it as if it were a namespace itself. However, I have never seen a URI
    given for it. Is "xmlns" a sort of predefined word in that all XML
    software just knows what it means without it needing a URI?
    The relevant specification is the "Namespaces in XML 1.0" specificaton:
    <http://www.w3.org/TR/xml-names/>
    You will see that <http://www.w3.org/TR/xml-names/#ns-declreserves a
    family of attributes for namespace declaration, namely either 'xmlns' or
    a qualified name beginning with 'xmlns:'.
    <element xmlns="http://example.com/ns1">
    is a default namespace declaration.
    So any namespace aware XML parser "knows" the meaning of xmlns and
    xmlns:some-prefix attributes as declaring XML namespaces.

    --

    Martin Honnen
    http://JavaScript.FAQTs.com/

    Comment

    • Eric Amick

      #3
      Re: Are there standard namespaces that don't need URIs?

      On Sat, 3 Feb 2007 08:02:34 -0600, Grant Robertson <bogus@bogus.in valid>
      wrote:
      >As I am learning about XML I seen that xmlns is used with a colon after
      >it as if it were a namespace itself. However, I have never seen a URI
      >given for it. Is "xmlns" a sort of predefined word in that all XML
      >software just knows what it means without it needing a URI?
      >
      >Are there any more of these special words that need no definition within
      >any schema? I know there are other special words like "element" and
      >"targetNamespa ce" but these seem to be defined within the XML Schema
      >schema definition. It seems that only "xmlns" must be known before
      >anything else can be known.
      xmlns is a namespace prefix, not a namespace; namespaces are identified
      by a URI. Anyway, the xmlns prefix is associated with the URI
      http://www.w3.org/2000/xmlns/, and the namespace standard forbids any
      other prefix from being associated with that URI. You can get all the
      details, including a description of other reserved prefixes, from the
      standard at http://www.w3.org/TR/2006/REC-xml-names-20060816/.
      --
      Eric Amick
      Columbia, MD

      Comment

      • Dimitre Novatchev

        #4
        Re: Are there standard namespaces that don't need URIs?


        "Grant Robertson" <bogus@bogus.in validwrote in message
        news:MPG.202dc3 e4aad002db9896f 8@news.newsguy. com...
        As I am learning about XML I seen that xmlns is used with a colon after
        it as if it were a namespace itself. However, I have never seen a URI
        given for it. Is "xmlns" a sort of predefined word in that all XML
        software just knows what it means without it needing a URI?
        >
        Are there any more of these special words that need no definition within
        any schema? I know there are other special words like "element" and
        "targetNamespac e" but these seem to be defined within the XML Schema
        schema definition. It seems that only "xmlns" must be known before
        anything else can be known.
        >
        Am I totally missing the boat on this or what?
        First of all, any namespace "needs" (has) a namespace-uri. What you are
        asking here is not namespaces that don't have uri-s, but *reserved
        prefixes*, that must always be associated with specific namespace-uri-s

        There are two such reserved prefixes (xml and xmlns) and they are listed in
        the Namespaces specification
        (http://www.w3.org/TR/xml-names/#sec-namespaces):

        "Namespace constraint: Reserved Prefixes and Namespace Names
        The prefix xml is by definition bound to the namespace name
        http://www.w3.org/XML/1998/namespace. It MAY, but need not, be declared, and
        MUST NOT be bound to any other namespace name. Other prefixes MUST NOT be
        bound to this namespace name, and it MUST NOT be declared as the default
        namespace.

        The prefix xmlns is used only to declare namespace bindings and is by
        definition bound to the namespace name http://www.w3.org/2000/xmlns/. It
        MUST NOT be declared . Other prefixes MUST NOT be bound to this namespace
        name, and it MUST NOT be declared as the default namespace. Element names
        MUST NOT have the prefix xmlns.

        All other prefixes beginning with the three-letter sequence x, m, l, in any
        case combination, are reserved. This means that:

        a.. users SHOULD NOT use them except as defined by later specifications

        b.. processors MUST NOT treat them as fatal errors.

        Though they are not themselves reserved, it is inadvisable to use prefixed
        names whose LocalPart begins with the letters x, m, l, in any case
        combination, as these names would be reserved if used without a prefix. "

        So, when using a global attribute like xml:space, one doesn't need to define
        the prefix "xml" -- it is known to the parser.



        Cheers,

        Dimitre Novatchev


        Comment

        • Richard Tobin

          #5
          Re: Are there standard namespaces that don't need URIs?

          In article <MPG.202dc3e4aa d002db9896f8@ne ws.newsguy.com> ,
          Grant Robertson <bogus@bogus.in validwrote:
          >Is "xmlns" a sort of predefined word in that all XML
          >software just knows what it means without it needing a URI?
          That's the right way to look at it; xmlns is part of the syntax.
          There *is* a URI associated with it, which you don't need to declare
          (and indeed mustn't) but you can ignore it for most purposes.

          The only other prefix that doesn't need to be declared is "xml", as
          used in xml:space, xml:lang, xml:base.

          -- Richard
          --
          "Considerat ion shall be given to the need for as many as 32 characters
          in some alphabets" - X3.4, 1963.

          Comment

          • Grant Robertson

            #6
            Re: Are there standard namespaces that don't need URIs?

            Thanks everyone! I always get the best, right to the point, answers in
            this newsgroup. It is such a relief from trying to get any straight
            answers in any Microsoft newsgroup.

            No matter how many times I go over it I keep forgetting that the prefix
            is just a local shorthand within the XML document for the actual
            namespace which is the URI. I see the prefix with the colon after it and
            think I am seeing a namespace name. Hopefully once I learn enough to
            start designing my schema and actual work with XML files more than just
            looking at examples, then I will get it through my head.

            Thanks again.

            Comment

            • Dimitre Novatchev

              #7
              Re: Are there standard namespaces that don't need URIs?

              I always get the best, right to the point, answers in
              this newsgroup. It is such a relief from trying to get any straight
              answers in any Microsoft newsgroup.
              Probably you haven't tried this Microsoft forum:
              XML and the .NET Framework


              I'll be glad to answer your questions there, too :o)

              Cheers,
              Dimitre Novatchev



              "Grant Robertson" <bogus@bogus.in validwrote in message
              news:MPG.202eb6 87de1f891b9896f 9@news.newsguy. com...
              Thanks everyone! I always get the best, right to the point, answers in
              this newsgroup. It is such a relief from trying to get any straight
              answers in any Microsoft newsgroup.
              >
              No matter how many times I go over it I keep forgetting that the prefix
              is just a local shorthand within the XML document for the actual
              namespace which is the URI. I see the prefix with the colon after it and
              think I am seeing a namespace name. Hopefully once I learn enough to
              start designing my schema and actual work with XML files more than just
              looking at examples, then I will get it through my head.
              >
              Thanks again.

              Comment

              • usenet@tech-know-ware.com

                #8
                Re: Are there standard namespaces that don't need URIs?

                On 3 Feb, 21:11, Grant Robertson <b...@bogus.inv alidwrote:
                Thanks everyone! I always get the best, right to the point, answers in
                this newsgroup. It is such a relief from trying to get any straight
                answers in any Microsoft newsgroup.
                >
                No matter how many times I go over it I keep forgetting that the prefix
                is just a local shorthand within the XML document for the actual
                namespace which is the URI. I see the prefix with the colon after it and
                think I am seeing a namespace name. Hopefully once I learn enough to
                start designing my schema and actual work with XML files more than just
                looking at examples, then I will get it through my head.
                >
                Thanks again.
                Hi Grant,
                It looks like you pretty much understand the namespace thing and just
                need more practice. However, just in case a alternative way of
                looking at it might be helpful, you might find the approach used by
                James Clark on the following page useful:



                Perhaps more for the benefit of others that happen to drift this way
                in future looking for answers, the most concise description of XML
                namespaces I've found so far is:

                Blogger is a blog publishing tool from Google for easily sharing your thoughts with the world. Blogger makes it simple to post text, photos and video onto your personal or team blog.


                Cheers,

                Pete.
                --
                =============== =============== ===============
                Pete Cordell
                Tech-Know-Ware Ltd
                for XML to C++ data binding visit
                Codalogic LMX generates C++ code to read and write XML data. Speed up code development and reduce bugs.

                (or http://www.xml2cpp.com)
                =============== =============== ===============

                Comment

                Working...