linked-statistics / DDI-controlled-vocabularies

SKOS representation of the controlled vocabularies of the DDI Alliance. See: http://www.ddialliance.org/controlled-vocabularies
4 stars 1 forks source link

Version as part of the URI? #5

Closed JoachimWackerow closed 10 years ago

JoachimWackerow commented 10 years ago

Version is part of the canonical URI and the location URI of the Genericode form, see: http://www.ddialliance.org/Specification/DDI-CV/SummaryStatisticType_1.0.html.

owl:versionInfo is currently used. Should the version be part of the URI? Like: http://rdf-vocabulary.ddialliance.org/SummaryStatisticsType_1.0/#

There are example like FOAF and Dublin Core using this approach: http://xmlns.com/foaf/0.1/ http:/purl.org/dc/elements/1.1/

The general question is how can a CV with an older version be accessed? It can make sense that two versions of a CV are in use at the same time.

boschthomas commented 10 years ago

I would recommend to use owl:versionInfo and NOT to have the version as part of the URI of the CV. If you want to access a particular version you can state that in your SPARQL query.

JoachimWackerow commented 10 years ago

Should this result in one file for the CV with all versions? How to make a difference between old an new entries. This would require a versioning on the concept level not just on the level of the concept scheme.

The issue is this: Currently the whole vocabulary (ConceptScheme) is versioned but not the single entry (Concept) according to the approach in Genericode.

There is a requirement that the old CV should be maintained even if only the some minor definition of a concept has changed. Otherwise software - using this specific version - can break.

A new version (like a CV with a new entry/concept) seems to have a new identity.

It is a general question how changes in controlled vocabularies and thesauri are managed. How is it done with other CVs?

How is the late binding concept realized in the Semantic Web? I.e. give the latest available version of something.

JoachimWackerow commented 10 years ago

I did a little research and found following documents on SKOS, controlled vocabularies, and versioning:

My conclusion would be following approach: Only the scheme is versioned not the single concept. The version of the scheme is part of the URI. Each version of a scheme has a complete set of concepts. The relationship between the base scheme and scheme versions, and between concepts of different concept scheme versions should be described (in the newer version).

Details:

Base scheme URI: http://rdf-vocabulary.ddialliance.org/DDICV/SummaryStatisticsType# Scheme version URI: http://rdf-vocabulary.ddialliance.org/DDICV/SummaryStatisticsType/1.0#

The base scheme could list the available versions by dc:hasVersion. A specific scheme version can refer to the base by dc:isVersionOf

Concepts can have change history notes with skos.historyNote.

Relationships between concepts (also of different versions of the scheme) can be expressed by: owl:sameAs, owl:equivalentClass (the use of it does not imply class equality), skos:narrowMatch, skos:exactMatch, dc:isReplaceBy, dc:replaces

boschthomas commented 10 years ago

tasks:

JoachimWackerow commented 10 years ago

Version as part or URI added. Base scheme added. Collection of CVs added.

JoachimWackerow commented 10 years ago

According to the OWL 2 documentation the base URI and the latest version URI should point to the same file with the latest version, like:

http://rdf-vocabulary.ddialliance.org/DDICV/SummaryStatisticsType# http://rdf-vocabulary.ddialliance.org/DDICV/SummaryStatisticsType_1.0#

See OWL 2 spec: http://www.w3.org/TR/owl2-syntax/#Ontology_IRI_and_Version_IRI http://www.w3.org/TR/owl2-syntax/#Versioning_of_OWL_2_Ontologies

The current approach in the base scheme is different. It is according to the section "Scheme Version Metadata" on at this page: http://www.w3.org/wiki/SkosCoreGuideToc/SectionVersioning#Scheme_Version_Metadata

Which way is to go?

JoachimWackerow commented 10 years ago

Hierarchy collection, version-independent file, versioned file with version in URI. See: https://github.com/linked-statistics/DDI-controlled-vocabularies/tree/master/SummaryStatisticsType

Change DDICV to DDI-CV.