This is a static archive of the previous Open Grid Forum GridForge content management system saved from host forge.ogf.org file /sf/sfmain/do/go/artf6570?nav=1&selectedTab=comments at Sun, 06 Nov 2022 14:39:28 GMT SourceForge : artf6570: NML schema namespace IRI

Project Home

Tracker

Documents

Tasks

Source Code

Discussions

File Releases

Wiki

Project Admin

NML-WG Homepage
Search Tracker
Project: NML-WG     Trackers > Schema Progress > View Artifact
Artifact artf6570 : NML schema namespace IRI
Tracker: Schema Progress
Title: NML schema namespace IRI
Description:
NML elements and attributes are be defined in a NML schema, identified by a URI (or IRI).

The general syntax for IRI is defined in RFC 3987. The syntax of IRI for OGF schema is defined in GFD.084.

* We will use the same URI for both XML and RDF.
- It is *best practice* to end a XML namespace in a alphanumeric characters, thus not in "/" or "#", although it is 
perfectly valid to do so.
- It is *not possible* to end a RDF namespace in a alphanumeric character, and it is *best practice* to end an RDF 
namespace in "#", but other punctuation marks such as "/" are valid too.
- GFD.084 recommends the syntax "http://schemas.ogf.org/nml/2012/10/nml".

Proposal:

For the base schema:
 http://schemas.ogf.org/nml/2012/10/base#

For subordinate schema:
 http://schemas.ogf.org/nml/2012/10/ethernet#

After publication, we will publish a HTML document at this schema pointing to (a) the GFD standard, (b) the XML schema 
and (c) the RDF schema. Pointers are -if possible- augmented with computer readable (e.g. RDDL ) pointers.

We will pick a date now, so implementations can start using that. Schemas that are published before the NML-base 
document is ratified MUST contain a large warning "DRAFT SCHEMA", but can use these URIs.
Submitted By: Freek Dijkstra
Submitted On: 07/13/2012 8:03 AM EDT
Last Modified: 11/30/2012 8:08 AM EST
Closed: 11/30/2012 8:08 AM EST

Status / Comments Change Log Associations Attachments  
Status  
Status:* Completed
Category:* Identifiers
Priority: * 2
Assigned To: * Freek Dijkstra
Comments
Jeroen van der Ham: 11/30/2012 8:08 AM EST
  Action: Update
Closed set to 11/30/2012
Status changed from Last Call to Completed
Jason Zurawski: 09/05/2012 10:34 AM EDT
  Comment:
Agree
  Action: Update
Jeroen van der Ham: 09/05/2012 6:57 AM EDT
  Comment:
I agree with the conclusion. The only remark that I have is that RDF namespaces are allowed to end with any character, not just "#" or "/". Although 
it certainly is best practice to use either of those.
  Action: Update
Freek Dijkstra: 09/05/2012 6:28 AM EDT
  Action: Update
Status changed from Need proposal to Last Call
Freek Dijkstra: 09/05/2012 6:28 AM EDT
  Action: Update
Description changed from
NML elements and attributes are be defined in a NML schema, identified by a IRI.

The general syntax for IRI is defined in RFC 3987. The syntax of IRI for OGF schema is defined in GFD.084.

The allowed form MUST be:

 namespace = common-part [specific-part ] common-part = scheme customs domain
 scheme = ( “http” | extension ) “://” customs = “schemas” | extension
 domain = “.ggf.org” | “.ogf.org” | extension specific-part = project version [ project | part ] project = “/” <
project acronym>
 version = “/” version-year “/” version-month version-year = 4DIGIT
 version-month = 2DIGIT
 part =“/”token[part]
 extension = token

Thus for the NML base schema, this seems to boil down to:

For the base schema:
 http://schemas.ogf.org/nml/2012/10/nml

For subordinate schema:
 http://schemas.ogf.org/nml/2012/10/ethernet


Proposal 1: Use http://schemas.ogf.org/nml/2012/10/nml
  (guaranteed GFD.84 compliant)
Proposal 2: Use http://schemas.ogf.org/nml/2012/10/base
  (GFD.84 compliant if one argues that /base is also a "subordinate" schema)
to
NML elements and attributes are be defined in a NML schema, identified by a URI (or IRI).

The general syntax for IRI is defined in RFC 3987. The syntax of IRI for OGF schema is defined in GFD.084.

* We will use the same URI for both XML and RDF.
- It is *best practice* to end a XML namespace in a alphanumeric characters, thus not in "/" or "#", although it is 
perfectly valid to do so.
- It is *not possible* to end a RDF namespace in a alphanumeric character, and it is *best practice* to end an RDF 
namespace in "#", but other punctuation marks such as "/" are valid too.
- GFD.084 recommends the syntax "http://schemas.ogf.org/nml/2012/10/nml".

Proposal:

For the base schema:
 http://schemas.ogf.org/nml/2012/10/base#

For subordinate schema:
 http://schemas.ogf.org/nml/2012/10/ethernet#

After publication, we will publish a HTML document at this schema pointing to (a) the GFD standard, (b) the XML schema 
and (c) the RDF schema. Pointers are -if possible- augmented with computer readable (e.g. RDDL ) pointers.

We will pick a date now, so implementations can start using that. Schemas that are published before the NML-base 
document is ratified MUST contain a large warning "DRAFT SCHEMA", but can use these URIs.

Freek Dijkstra: 08/08/2012 10:25 AM EDT
  Action: Update
Assigned To set to Freek Dijkstra
Category changed from Procedural to Identifiers
Priority changed from 4 to 2
Freek Dijkstra: 08/08/2012 4:20 AM EDT
  Comment:
Jeroen van der Ham wrote to the mailing list:


- Namespaces in XML are used for scoping, in XML the element name and namespace are separate parts in identifying a single thing.
- Namespaces in RDF are used like prefixing, the element name and namespace are concatenated to form a single identifying URI.
- It is *best practice* to not end XML namespaces in "/" or "#", but it is perfectly valid to do so, and many standards do.
- It is *best practice* to end an RDF namespace in "#", but it is perfectly valid to use something else, some standards also use "/".
- The RDF standard states that "rdf:id" values are transformed by appending "#" to the namespace, and then appending the value. In practice "rdf:id" 
is not used.
- The RDF syntax further complicates things by stating informatively that implementations must add a "/" to the end of a namespace if it is a 
hierarchical namespace.

With that in mind, I would propose that we use http://schemas.ogf.org/nml/2012/10/nml/ as the namespace, so that we can use the same for both XML and 
RDF.
  Action: Update
Freek Dijkstra: 07/26/2012 10:24 AM EDT
  Comment:
I withdraw the above proposal.

RDF and XML namespaces are sufficiently different that we need to answer the following 3 questions first:



A few high-level questions:
1. How do we want to translate URIs between RDF and XML?
   By a lookup table or by some general procedure?
2. Do we want to use (roughly) the same URI for the XML and RDF schema?
3. If you answered "yes" to question #2, what should be publish at
   this URI?

Ad 1: The advantage of a lookup table is that it works for all syntaxes
(URIs ending in hash, slash or anything else), but implementations need
to learn about the URI before they can support future extensions.
The advantage of a procedure is that is works for future NML extensions,
but requires that all NML extensions must adhere to a particular syntax.

Ad 2: Are we going to use "http://schemas.ogf.org/nml/2012/10/base" and
"http://schemas.ogf.org/nml/2012/10/base#" or do we prefer to publish
the schema at the defined location. In that case, we need distinct URI.
E.g. "http://schemas.ogf.org/nml/2012/10/base/xml" and
"http://schemas.ogf.org/nml/2012/10/base/rdf#".

Ad 3. A usual trick employed by OASIS is to put up a HTML page which
points to both the standard, and the schema(s). E.g.
"http://docs.oasis-open.org/tamie/xtemp/200909". There is also a (little
used?) standard to add computer readable pointers to the schemata in the
HMTL document. See http://www.rddl.org/
  Action: Update
Status changed from Under discussion to Need proposal
Freek Dijkstra: 07/18/2012 8:42 AM EDT
  Comment:
Regarding the appended character. I also had a look at the RDF best practices. http://www.w3.org/TR/swbp-vocab-pub/ Lists the pro, cons and 
configurations for defining namespaces with hash (#), slash (/) or nothing at the end.

The first example, with hash-namespace seems easiest. Carefully note that the namespace of the ontology does NOT contain a hash, but the properties 
defined in the namespace start with a hash, and for ease of use, the namespace in the document also contains a hash. Apparently, this is perfectly 
valid.

<rdf:RDF
 xmlns:example1="http://www.w3.org/2006/07/SWD/recipes/examples-20080421/example1#"
 xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:owl="http://www.w3.org/2002/07/owl#"
 xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
>
<owl:Ontology rdf:about="http://www.w3.org/2006/07/SWD/recipes/examples-20080421/example1">
  <rdfs:comment>An example vocab for minimal hash setup.</rdfs:comment>
  <rdfs:label>Example 1 Ontology</rdfs:label>
</owl:Ontology>
</rdf:RDF>
  Action: Update
Freek Dijkstra: 07/18/2012 8:31 AM EDT
  Comment:
Shall we also stick a date (version) to the schema yet, or leave it up for last change before publication? I've started using 2013/10 around 2010 
mostly as a joke. Given the 90-day public comment, I suspect that the actual publication can be first half of 2013.
  Action: Update
Freek Dijkstra: 07/13/2012 10:32 AM EDT
  Comment:
We probably also need:

* Namespace for relation types
* Namespace for Service types
* Namespace for port/link encodings
* Namespace for label types
* Namespace for parameter names (e.g. noReturnTraffic for Links, label conversion for Switching Services)
* Namespace for Ethernet technology
* Namespace for WDM technology
  Action: Update
Freek Dijkstra: 07/13/2012 10:26 AM EDT
  Action: Update
Description changed from
NML elements and attributes are be defined in a NML schema, identified by a IRI.

The general syntax for IRI is defined in RFC 3987. The syntax of IRI for OGF schema is defined in GFD.084.

The allowed form MUST be:

 namespace = common-part [specific-part ] common-part = scheme customs domain
 scheme = ( “http” | extension ) “://” customs = “schemas” | extension
 domain = “.ggf.org” | “.ogf.org” | extension specific-part = project version [ project | part ] project = “/” <
project acronym>
 version = “/” version-year “/” version-month version-year = 4DIGIT
 version-month = 2DIGIT
 part =“/”token[part]
 extension = token

Thus for the NML base schema, this seems to boil down to:

For the base schema:
 http://schemas.ogf.org/nml/2012/10/nml

For subordinate schema:
 http://schemas.ogf.org/nml/2012/10/ethernet
to
NML elements and attributes are be defined in a NML schema, identified by a IRI.

The general syntax for IRI is defined in RFC 3987. The syntax of IRI for OGF schema is defined in GFD.084.

The allowed form MUST be:

 namespace = common-part [specific-part ] common-part = scheme customs domain
 scheme = ( “http” | extension ) “://” customs = “schemas” | extension
 domain = “.ggf.org” | “.ogf.org” | extension specific-part = project version [ project | part ] project = “/” <
project acronym>
 version = “/” version-year “/” version-month version-year = 4DIGIT
 version-month = 2DIGIT
 part =“/”token[part]
 extension = token

Thus for the NML base schema, this seems to boil down to:

For the base schema:
 http://schemas.ogf.org/nml/2012/10/nml

For subordinate schema:
 http://schemas.ogf.org/nml/2012/10/ethernet


Proposal 1: Use http://schemas.ogf.org/nml/2012/10/nml
  (guaranteed GFD.84 compliant)
Proposal 2: Use http://schemas.ogf.org/nml/2012/10/base
  (GFD.84 compliant if one argues that /base is also a "subordinate" schema)

Freek Dijkstra: 07/13/2012 8:52 AM EDT
  Comment:
I just read http://www.w3.org/TR/xml-names/. It seems there is no default separator, and the namespace is usually defined without appending character.
 Thus:
  http://schemas.ogf.org/nml/2012/10/nml
instead of:
  http://schemas.ogf.org/nml/2012/10/nml/

How to append a element to a namespace to get a URI for the element is undefined, but it seems common to separate the namespace and element name by a 
hash. Thus http://schemas.ogf.org/nml/2012/10/nml#node or http://schemas.ogf.org/nml/2012/10/nml/#Node

Given that the "/#" may cause confusion, I suggest to define:
  http://schemas.ogf.org/nml/2012/10/nml
instead of:
  http://schemas.ogf.org/nml/2012/10/nml/
  Action: Update
Freek Dijkstra: 07/13/2012 8:14 AM EDT
  Comment:
Remarks:

1. It seems that GFD.084 requires the base schema to be named:
http://schemas.ogf.org/nml/2012/10/nml
instead of
http://schemas.ogf.org/nml/2012/10/base

2. This conflict with the decision taken at OGF30, where there was rough consensus on:
http://schemas.ogf.org/nml/base/2012/10/

3. GFD.84 defines the schema without appending character, thus as "http://schemas.ogf.org/nml/2012/10/nml". I am under the impression that e.g. the 
definition of "Node" in that schema would then become "http://schemas.ogf.org/nml/2012/10/nmlNode", hence that it is common to append a namespace with
 either a "#" or a "/", so it becomes ""http://schemas.ogf.org/nml/2012/10/nml#Node" or "http://schemas.ogf.org/nml/2012/10/nml/Node" respectively.
Anyone who can shed his/her light on this, please do!
  Action: Update
Freek Dijkstra: 07/13/2012 8:07 AM EDT
  Action: Update
Description changed from
NML elements and attributes are be defined in a NML schema, identified by a IRI.

The general syntax for IRI is defined in RFC 3987. The syntax of IRI for OGF schema is defined in GFD.084.

The allowed form MUST be:

 namespace = common-part [specific-part ] common-part = scheme customs domain
 scheme = ( “http” | extension ) “://” customs = “schemas” | extension
 domain = “.ggf.org” | “.ogf.org” | extension specific-part = project version [ project | part ] project = “/” <
project acronym>
 version = “/” version-year “/” version-month version-year = 4DIGIT
 version-month = 2DIGIT
 part =“/”token[part]
 extension = token

Thus for the NML base schema, this seems to boil down to:

http://schemas.ogf.org/nml/2012/10/nml-base
to
NML elements and attributes are be defined in a NML schema, identified by a IRI.

The general syntax for IRI is defined in RFC 3987. The syntax of IRI for OGF schema is defined in GFD.084.

The allowed form MUST be:

 namespace = common-part [specific-part ] common-part = scheme customs domain
 scheme = ( “http” | extension ) “://” customs = “schemas” | extension
 domain = “.ggf.org” | “.ogf.org” | extension specific-part = project version [ project | part ] project = “/” <
project acronym>
 version = “/” version-year “/” version-month version-year = 4DIGIT
 version-month = 2DIGIT
 part =“/”token[part]
 extension = token

Thus for the NML base schema, this seems to boil down to:

For the base schema:
 http://schemas.ogf.org/nml/2012/10/nml

For subordinate schema:
 http://schemas.ogf.org/nml/2012/10/ethernet

Freek Dijkstra: 07/13/2012 8:03 AM EDT
  Action: Create


 
 
 
< Previous
 
 
Next >
 


The Open Grid Forum Contact Webmaster | Report a problem | GridForge Help
This is a static archive of the previous Open Grid Forum GridForge content management system saved from host forge.ogf.org file /sf/sfmain/do/go/artf6570?nav=1&selectedTab=comments at Sun, 06 Nov 2022 14:39:28 GMT