[oslc-core] Some Topics for Discussion Today

Arthur Ryman ryman at ca.ibm.com
Fri May 28 11:16:56 EDT 2010


Steve/Dave,

In XML documents there should be no problem since namespaces must be 
declared explicitly. You could use foo: for Dublin Core and the XML would 
be correct.

The issue is in situations where there is a predefined prefix, e.g. in 
URLs or JSON. Do any OSLC 1.0 specs have that situation?

The con of not using the normal prefix is potential confusion when 
combining OSLC content with other content, which is a very likely and 
desirable situation. In fact, that's the essence of Linked Data - 
unanticipated  useful combination of your data with other data. 

The only place where OSLC should allow predefined prefixes is on URLs, and 
there the predefined prefixes should be explicitly defined by the domain 
specification. Since we also allow explicit declaration of prefixes via 
the oslc.prefix query parameter, we can make the prefixes explicit if 
needed.

In all other contexts, prefixes should be explicitly defined. Standards 
like N3, Turtle, SPARQL, etc provide a way to declare prefixes. We need 
this for JSON. From a documentation point of view, using dcterms: makes it 
clear what namespace we are using. 

I think the following makes sense:

1. An OSLC domain specification MUST explicitly specify any predefined 
prefixes that are used in URLs. For backward compatibility, dc: MAY be 
used for Dublin Core terms. dcterms: SHOULD also be supported.
2. OSLC resources formats MUST include explicit prefix definitions.
3. OSLC documentation and examples SHOULD use the recommended convention 
of dcterms: for Dublin Core terms in order to avoid confusion with dc: 
which is normally used for Dublin Core elements.

Regards, 
___________________________________________________________________________ 

Arthur Ryman, PhD, DE


Chief Architect, Project and Portfolio Management

IBM Software, Rational

Markham, ON, Canada | Office: 905-413-3077, Cell: 416-939-5063
Twitter | Facebook | YouTube







From:
Steve K Speicher <sspeiche at us.ibm.com>
To:
Dave <snoopdave at gmail.com>, oslc-core at open-services.net
Date:
05/28/2010 09:15 AM
Subject:
Re: [oslc-core] Some Topics for Discussion Today
Sent by:
oslc-core-bounces at open-services.net



Dave <snoopdave at gmail.com> wrote on 05/27/2010 08:36:21 AM:

[snip] 
 
> > 2. Our use of Dublin Core namespace prefixes seems a little 
inconsistent
> > with common practice. We are using the newer terms namespace,
> > http://purl.org/dc/terms/ instead of the legacy elements namespace
> > http://purl.org/dc/elements/1.1/. However, the usual prefix for the 
terms
> > namespace seems to be dcterms: while the elements namespace uses dc:. 
I
> > suggest we adopt this convention and use dcterms: as the predefined 
and
> > recommended prefix. See [1]
> 
> I wrote this up on the issues page. Here's what I wrote for the 
resolution:
> 
> Response: this is not a new situation, the old v1 specs used the new
> namespace and the old prefix too. We seem to have two options now:
> 1) Continue to use the new Dublin Core namespace and to use the old
> "dc" prefix. Pros: no change to implementations, won't break badly
> behaved clients who have hardcoded the namespace prefix. Cons: does
> not follow Dublin Core conventions
> 2) Switch to using the new "dcterms" prefix. Pros: follows Dublin Core
> conventions. Cons: could break badly behaved clients.
> 
> After writing that I think changing is a bad idea. Here's why.
> 
> In theory, recommending "dcterms" as the prefix won't break
> implementations because XML parsing tools can handle any prefix for a
> namespace -- so this change should be no problem. But, in practice, I
> worry that we may have some badly behaved implementations, that we had
> no way to declaring prefixes in query URIs and that we had no way to
> declare prefixes in our JSON representations -- so query URIs and JSON
> representations could be broken by this change.
> 
> And, according to that same theory, we should be able to stick with
> the old "dc" prefix because XML parsing tools can use any prefix for a
> namespace. We won't break existing implementations if we stick with as
> the "suggested prefix" for Dublin Core elements. So, why change
> anything?
> 
> Maybe I'm not understanding the benefits of making this change. Are
> there more "pros" to changing than what I have listed?
> 

I agree that we should stick to using "dc".  I don't think we have any of 
the DC legacy issues to be concerned about. 

> 
[snip] 


Steve Speicher | IBM Rational Software | (919) 254-0645
_______________________________________________
Oslc-Core mailing list
Oslc-Core at open-services.net
http://open-services.net/mailman/listinfo/oslc-core_open-services.net







More information about the Oslc-Core mailing list