ISSUE-146: Integration methodology and Implementation

methodo

Integration methodology and Implementation

State:
PENDING REVIEW
Product:
Semantic Sensor Network Ontology
Raised by:
Maxime Lefrançois
Opened on:
2017-02-08
Description:
Hi,

I would like to suggest a rigorous methodology for integrating old-SSN, SSN, and SOSA.

The first steps of this methodology are reflected in the following commits on github:

- https://github.com/w3c/sdw/pull/536/commits/aa6dc76d0c653f5ed515b52506d64bf8184e16f5
- https://github.com/w3c/sdw/pull/536/commits/e104cdc5cee6734b8ef467e577f78a81c8e74d11
- https://github.com/w3c/sdw/pull/536/commits/421684c8dcd401a5f0af7df6655ac88f238eef2a
- https://github.com/w3c/sdw/pull/536/commits/6d9608a10cd2fc6f109845c2895a86c9ffbbfdeb

The methodology looks as follows (see readme.md):

# oldSSN/newSSN/SOSA/alignments Integration Proposal

This folder contains a proposal for the various documents that need to be exposed by the W3C server:
- the document where the old SSN namespace will redirect;
- the document that contains only the sosa ontology;
- the document that contains the ssn ontology: it imports sosa, adds additional axioms, and defines more terms;
- a document for each alignment;
- a document that specifies how the W3C server should serve the different documents

## Requirements

- be as close as possible with the proposals 5 and 6 made by KJanowicz and Kerry at https://www.w3.org/2015/spatial/wiki/Proposals_for_rewriting_SSN
- be conformant with the linked vocabulary best practices at http://lov.okfn.org/Recommendations_Vocabulary_Design.pdf
- be OWL DL ontologies;
- adopt the implementation option for different namespaces for SOSA/SSN (this can be reverted to use a single namespace)
- implement the mapping table at https://www.w3.org/2015/spatial/wiki/Mapping_Table
- implement the advices from Phil A and agreed by Scott Simmons at https://www.w3.org/2015/spatial/wiki/Proposals_for_rewriting_SSN
- the sosa should

## Checks to do before merging pull requests:

- check the documents implement no more than the changes that are announced in the pull request;
- check that every modification is associated with a GitHub issue;
- check that the requirements are met;
- check that the ontologies are valid OWL DL ontologies;
- solve any mention of ISSUE in the documents.

## Proposed methodology

### Initialization

1. create the stub of the documents: `ssnx.ttl`, `sosa.ttl`, `ssn.ttl`;
2. copy the old SSN document without the DUL alignments, name it `oldssn.ttl`
3. reorder the terms and group them in sections of no more than 8-10 terms;

For ssnx:

1. Copy the prefix declarations, raise and solve issues there.
2. Copy the ontology declaration and its metadata, raise and solve issues there.

For sosa:

1. Copy the prefix declarations, raise and solve issues there.
2. Copy the ontology declaration and its metadata, raise and solve issues there.

For ssn:

1. Copy the prefix declarations, raise and solve issues there.
2. Copy the ontology declaration and its metadata, raise and solve issues there.

### Steps

1. pick the next term in `oldssn.ttl`
2. cut/paste its declaration to `ssnx.ttl`
1. copy the declaration from the old SSNX ontology;
2. order, correct, update the term metadata:
1. first the rdfs:label, add @en
2. then the rdfs:comment, add @en and replace with skos:definition
3. then dcterms:source and the rdfs:seeAlso, if present;
4. then owl:deprecated true;
5. then a **proposal** for the alignemnt with a term in sosa or ssn, add the mention `# TODO: check` at the end of the line
6. then, add rdfs:isDefinedBy <http://purl.oclc.org/NET/ssnx/ssn>;
7. stash all of the axioms.
3. when the term belongs to sosa,
1. work on the declaration in `sosa.ttl`
1. reuse what's there if possible
2. check the metadata, delete the duplicate rdfs:comment, keep the skos:definition
2. raise issues, add `# TODO: check` at the end of lines where choices have been made
2. work on the declaration in `ssn.ttl`
1. just put the various axioms,
2. raise issues, add `# TODO: check` at the end of lines where choices have been made.
3. when the term belongs to ssn,
2. work on the declaration in `ssn.ttl`
1. basically copy the declaration and its metadata;
2. raise issues, add `# TODO: check` at the end of lines where choices have been made.




Then the proposed list of terms is the following (see Terms.xlsx)

FoI-P FeatureOfInterest
FoI-P Property
FoI-P hasProperty
FoI-P isPropertyOf
Samples <only in sosa>
Samples <only in sosa>
Samples <only in sosa>
Procedures Process
Procedures Sensing
Procedures hasInput
Procedures hasOutput
Procedures Output
Procedures Input
ProcedureExecutors implements
ProcedureExecutors implementedBy
ProcedureExecutors Sensor
ProcedureExecutors observes
Platform Platform
Platform attachedSystem
Platform onPlatform
ProcedureExecutions madeObservation
ProcedureExecutions observedBy
ProcedureExecutions sensingMethodUsed
ProcedureExecutions Observation
ProcedureExecutions featureOfInterest
ProcedureExecutions observedProperty
Stimulus SensorInput
Stimulus Stimulus
Stimulus detects
Stimulus isProxyFor
Result ObservationValue
Result SensorOutput
Result hasValue
Result observationResult
Result isProducedBy
Result observationResultTime
Result observationSamplingTime
Result qualityOfObservation
Time startTime
Time endTime
MeasuringCapability hasMeasurementCapability
MeasuringCapability hasMeasurementProperty
MeasuringCapability MeasurementCapability
MeasuringCapability MeasurementProperty
MeasuringCapability MeasurementRange
MeasuringCapability Accuracy
MeasuringCapability DetectionLimit
MeasuringCapability Drift
MeasuringCapability Frequency
MeasuringCapability Latency
MeasuringCapability Precision
MeasuringCapability Resolution
MeasuringCapability ResponseTime
MeasuringCapability Selectivity
MeasuringCapability Sensitivity
Deployment Deployment
Deployment DeploymentRelatedProcess
Deployment deployedOnPlatform
Deployment deployedSystem
Deployment deploymentProcessPart
Deployment hasDeployment
Deployment inDeployment
OperatingRestriction hasOperatingProperty
OperatingRestriction hasOperatingRange
OperatingRestriction hasSurvivalProperty
OperatingRestriction hasSurvivalRange
OperatingRestriction MaintenanceSchedule
OperatingRestriction OperatingProperty
OperatingRestriction OperatingRange
OperatingRestriction SurvivalProperty
OperatingRestriction SurvivalRange
OperatingRestriction SystemLifetime
Value hasValue
?? forProperty
?? ofFeature
?? inCondition
?? Condition
?? OperatingPowerRange
?? BatteryLifetime
?? System
?? hasSubSystem
?? Device
?? SensingDevice
?? SensorDataSheet
Related Actions Items:
No related actions
Related emails:
  1. Re: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from rob@metalinkage.com.au on 2017-03-21)
  2. RE: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from kerry.taylor@anu.edu.au on 2017-03-21)
  3. RE: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from Simon.Cox@csiro.au on 2017-03-21)
  4. Re: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from rob@metalinkage.com.au on 2017-03-21)
  5. Re: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from rob@metalinkage.com.au on 2017-03-21)
  6. Re: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from rob@metalinkage.com.au on 2017-03-21)
  7. Re: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from armin.haller@anu.edu.au on 2017-03-21)
  8. Re: Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from rob@metalinkage.com.au on 2017-03-20)
  9. Remaining Options for SOSA-SSN Integration, Was: SOSA/SSN integration architecture (from maxime.lefrancois@emse.fr on 2017-03-20)
  10. Re: ISSUE-139, ISSUE-146, Methodology ? Was: alignment sosa to ssn (from maxime.lefrancois@emse.fr on 2017-02-13)
  11. Re: ISSUE-139, ISSUE-146, Methodology ? Was: alignment sosa to ssn (from armin.haller@anu.edu.au on 2017-02-12)
  12. RE: ISSUE-139, ISSUE-146, Methodology ? Was: alignment sosa to ssn (from Simon.Cox@csiro.au on 2017-02-12)
  13. ISSUE-139, ISSUE-146, Methodology ? Was: alignment sosa to ssn (from maxime.lefrancois@emse.fr on 2017-02-11)
  14. ISSUE-146 Was: Starting the integration process slowly on github (from maxime.lefrancois@emse.fr on 2017-02-08)

Related notes:

updated nickname

Maxime Lefrançois, 8 Feb 2017, 09:41:36

Display change log ATOM feed


Chair, Staff Contact
Tracker: documentation, (configuration for this group), originally developed by Dean Jackson, is developed and maintained by the Systems Team <w3t-sys@w3.org>.
$Id: 146.html,v 1.1 2018/10/09 10:07:52 carine Exp $