nfoWorks: tools for document interoperability

d111001 nfoWorks devNote
ns/ Namespace Identifiers

nfoWorks>dev>
2011>10>

d111001>
 0.07 2017-06-14 20:21


All nfoWorks-issued identifiers based on URIs are catalogued in pages of the Namespace folder, <http://nfoWorks.org/ns/>.  In effect, every URI employed as an identifier for nfoWorks is related to a namespace, even if the namespace has but itself as the only term.

Content
1. Namespaces
2. URIs as Namespace Identifiers
3. The http://nfoworks.org/ns/ Identifier Family
4. More Information

  1. Namespaces

1.1 Namespaces are arrangements by which a local vocabulary of terms is uniquely distinguished from the terms in any other namespace, even when the simple names/identifiers employed for individual terms are "spelled" the same in different namespaces.  In the absence of information to the contrary, terms used within a particular namespace must be considered distinct and independent from those introduced under any other namespace and from those not under any namespace.  In nfoWorks, the conventions for XML Namespaces apply for digital vocabularies and the identifiers of their terms.

1.2 Combination of namespace identification with a simple name/identifier constitutes the uniquely-distinguishing identification of a specific term.  By convention, the simple name/identifier is called the (namespace-) local name.  The pairing of namespace identification and local name makes identification of the term unique.  This abstract combination is sometimes symbolized in form "{namespace-identifier} local-name." 

1.3 There are many notations for qualification of a term.  Sometimes the qualified combination may be explicit in the form of a qualified name.  In other cases, the {namespace-identifier} local-name association may be indirect.

1.4 For example, the following are some ways in nfoWorks that namespaces are used to establish a local name (myTerm) as being under a particular namespace:

org.nfoworks.ns.example.myTerm
Java-style qualification of a type via package/class-path naming
  
<here:myTerm
 xmlns:here="http://nfoworks.org/ns/example#" />
XML namespace declaration of namespace for prefix "here:"
   
<myTerm
 xmlns="http://nfoworks.org/ns/example#" />
XML namespace declaration as the default understood for "myTerm"
 
<term
 profile="http://nfoworks.org/ns/example#myTerm" />
Expressing namespace qualification by concatenation, if so permitted
   
<term xmlns:nw="http://nfoworks.org/ns/example#"
      profile="[nw:myTerm]" />
Expressing concatenation by CURIE convention

1.5 When a namespace identifier is used alone, the interpretation depends on the context of the usage.  A namespace identifier can also be equivalent to a term in a superior namespace, if so defined.

1.6 Note: In nfoWorks treatment of namespaces, the form {text} will be used to signify the interpretation of text as a namespace identifier.  The form <text> is used for other interpretations while being clear what the extent of text is, set apart from the context in which it appears.

1.7 Given a namespace identifier, it is useful if the following can be determined:

  1. whether a local-name form distinguishes a term established under the particular namespace {namespace-identifier} local-name is valid
      
  2. definition of the term
      
  3. definitions of the namespace and its usages

1.8 For the determination to be effective, it must be possible to locate the authoritative definition of a namespace from the identification of the namespace itself.  There must be an unambiguous means for discriminating among namespaces.

1.9 It is also desirable to know precisely when an identifier is that of a namespace and, if possible, when it is not.

 2. URIs as [Namespace] Identifiers

2.1 Universal Resource Identifiers (URIs) provide a convenient decentralized mechanism for establishment of unique identifiers, including identifiers for namespaces [RFC3986]. 

2.2 Absolute URIs are, by convention, associated with specific authorities. 

2.3 For example, nfoWorks projects claim authority over all URIs that begin http://nfoworks.org/... .   Any of these can be chosen as identifiers for any purpose of nfoWorks projects.  There is no nfoWorks claim of authority over URIs not related to the nfoworks.org domain name.

2.4 For nfoWorks, it is the case that all of uses of URIs as identifiers are resolvable.  That is, the URI provided as an identifier is also the location at which an authoritative definition of the identifier can be found.  This is an nfoWorks-specific convention. 

2.5 In addition, URIs can be designated as namespace identifiers.  The URI  namespace convention adopted for nfoWorks is the one established for XML [xml-names].

2.6 Used as namespace identifiers in accordance with the XML convention, any difference in the literal form of the URI constitutes identification of different namespaces, if any.  The following must be considered different in the absence of information to the contrary:

2.7 Any, or all, of those, among others, might be used as distinct namespace identifiers; the terms defined under each can be completely independent.  Even though nfoWorks uses resolvable namespace URIs, only one of the resolvable absolute URIs will be the official namespace identifier.  The variants may, but need not, have collateral significance.

2.8 Note: Although many URIs may resolve to the same web-based resource, no different nfoWorks namespaces will resolve to the same resource.  Specifically, no two nfoWorks namespace identifiers will differ only in the case of letters or in the presence or absence of ending "/" and "#" characters.

  3. The http://nfoworks.org/ns/ Identifier Family

3.1 All URI-based identifiers under the authority of nfoWorks begin with the segment "http://nfoworks.org/ns/".  It is not itself a namespace identifier.   It is the leading term of all identifiers and of definitions that are established for nfoWorks.

3.2 The ns/ family is divided into branches and sub-branches.  At the leaves are the definitions for the namespaces that terminate at those points.

3.3 There are different ways that the namespace identifier may be combined with local names under the namespace:

  1. Via XML namespace declarations that qualify individual local names (XML NCNames) in their scopes
  2. As prefix forms for URIs that form a family of unique identifiers by concatenation:
    • values of attributes in XML markup
    • terms in RDF and RDFa Semantic Web notations, including OWL declarations
    • other occurrences of resolvable URIs in digital material
    • declared as the values of prefixes for expansion of CURIE forms in any of the above situations
    • declared as the values of prefixes that can occur in XML attribute values to signify the namespace, as is the case in certain attributes defined in the OpenDocument Format.
  3. Via namespace declarations in XML or other notations that serve to establish the namespace in a specialized context

3.4 When a term has namespace-qualified identification of form {namespace-URI-ending-in-#} local-name, the corresponding term has a definition at <namespace-URI-ending-in-#local-name>.  This may, but need not, be the URI-based identifier of that term.  The forms of identification for the term are specified by the definition of that term.  Although such a definition may be referenced in RDF via the local-name URI, perhaps via CURIE, that is usually a separate matter from the nfoWorks-established identifier usage.

3.5 Note: The URIs for definitions of nfoWorks (namespace) identifiers are often those of web-site folders, not specific pages.  It is the default page for the folder that provides the definition.  The direct URI of that default page is not any (namespace) identifier URI.  This technique is employed for technical reasons.

visits to popular nfoWorks pages

Locations of visitors to nfoWorks

  4. More Information

References

[CURIE]
Birbeck, Mark., McCarron, Shane., (eds.).  CURIE Syntax 1.0: A syntax for expressing Compact URIs.  W3C Working Group Note, 16 December 2010.  Available on the Internet at <http://www.w3.org/TR/2010/NOTE-curie-20101216>.
  
[RDF-XML]
Beckett, Dave., McBride, Brian., (eds.).  RDF/XML Syntax Specification (Revised).  W3C Recommendation 10 February 2004.  Available at <http://www.w3.org/TR/2004/REC-rdf-syntax-grammar-20040210/>.
  
[RDFa]
Adida, Ben., Birbeck, Mark., McCarron, Shane., Pemberton, Steven., (eds.).  RDFa in XHTML: Syntax and Processing -- A collection of attributes and processing rules for extending XHTML to support RDF.  W3C Recommendation 14 October 2008.  Available on the Internet at <http://www.w3.org/TR/2008/REC-rdfa-syntax-20081014/>.
  
[RFC3986]. 
Berners-Lee, T., Fielding, R., Masinter, L.  Uniform Resource Identifier: Generic Syntax.  IETF RFC 3986, January 2005.  Available on the Internet at <http://www,ietf.org/rfc/rfc3986.txt>.
  
[RFC3987]
Duerst, M., Suignard, M.  Internationalized Resource Identifiers (IRIs).  IETF RFC 3987, January 2005.  Available on the Internet at <http://www.ietf.org/rfc/rfc3987.txt>.
  
[xml-names]
Bray, Tim., Hollander, Dave., Layman, Andrew., Tobin, Richard., Thompson, Henry S.(eds.).  Namespaces in XML 1.0 (Third Edition).  W3C Recommendation 8 December 2009.  Available on the Internet at <http://w3c.org/TR/2009/REC-xml-names-20091208>; latest version available at <http://w3c.org/TR/xml-names/>.    
  
[xml-names11]
Bray, Tim., Hollander, Dave., Layman, Andrew., Tobin, Richard (eds.).  Namespaces in XML 1.1 (Second Edition).  W3C Recommendation 16 August 2006.  Available on the Internet at <http://www.w3c.org/TR/xml-names11-20060816/>; latest version available at <http://www.w3c.org/TR/xml-names11/>.
   Because nfoWorks XML namespace identifiers are URIs, they also qualify as IRIs under this specification.

 


Attribution:
Hamilton, Dennis E.
ns/ Namespace Identifiers.   nfoWorks devNote folio d111001 0.07, October 27, 2012.  Accessed at <http://nfoWorks.org/dev/2011/10/d111001.htm>.
Revision History:
 
0.07 2012-10-27-15:11 Streamline
The professional-appearance is simplified and this folio cover is aligned with that version.  The text is revised as needed to support the distinction of supplemental, provisional, and reserved identifiers in draft specifications of standards.
0.06 2012-07-12-20:52 Clean up Ambiguity around Fragment Usage
The conditions on targeting to pages and fragments of pages is introduced, along with some additional material and permalink numbering of the sections.
0.05 2012-07-01-17:50 Cleanup ns/example# for consistency
The use of ns/example# is made consistent in all examples so that it pairs nicely with the definition of ns/example# and without specification of any variants as Namespace identifiers.  Correct the title of section 3.
0.04 2012-05-06-16:46 Clarify Namespace Notations
The clarifying use of {...} and <...> is introduced.  The nomenclature usage is smoothed across the sections.
0.03 2012-05-02-12:42 Clarify the Example Cases
Now that the example URIs are resolvable, their use here is cleaned up and corrected URIs are used in illustrations.  The capitalization of the domain name portion of the identifiers is made consistent.
0.02 2012-04-29-12:42 Adjust to Differentiate Forms
The choice of URI for a namespace when one of several resolve to the same resource is clarified.
0.01 2012-01-28-15:51 Create Namespace Overview Description
The folio front page provides a breakdown and references on URIs as namespace identifiers
0.00 2011-10-01-17:55 Establish Initial Placeholder for Material
Have just enough document engineering for the first nfoWorks ns/ page to be presented as part of the documentation of the definition of namespaces as part of nfoWorks.

Construction Structure (Hard Hat Area)

Creative Commons License You are navigating nfoWorks.
This work is licensed under a
Creative Commons Attribution 2.5 License.

created 2011-10-01-17:44 -0700 (pdt)
$$Author: Orcmid $
$$Date: 17-06-14 20:21 $
$$Revision: 243 $