Re: Documenting reused concepts in (this) vocabulary

Hi,
I don't know if there is a clear recommendation regarding the approaches
for documenting reuse concepts.
One could harvest vocabulary catalogs (e.g., Linked Open Vocabularies) to
check what emerges from ontology creators' practices.

There could be yet another different approach.
Here all the concepts of the ontology use rdfs:isDefinedBy to point to the
ontology's URI and dcterms:source is used for the provenance of the
original concept in the new ontology.

<original ontology ex:A>
exo:Concept a rdfs:Class ;
      rdfs:label "Concept in original ontology" ;
     *rdfs:isDefinedBy exo: ;*

*.*
<new ontology ex:B>
ex:Concept a rdfs:Class ;
   rdfs:label "New Concept " ;
   *dcterms:source exo:Concept* ;
   *rdfs:isDefinedBy ex: ;*
   rdfs:comment "We use Concept to do ..." ;
   .

Does that also make sense?

Best,
Ghislain

On Thu, Aug 11, 2022 at 5:57 PM Harshvardhan J. Pandit <me@harshp.com>
wrote:

> Hi.
> tldr; How to document external concepts (e.g. external:Concept) being
> reused in a separate vocabulary (e.g. vocab A) ? Is there any existing
> "good practices" that have been around for this use-case?
>
> The semantic web good practices suggest we utilise existing vocabularies
> where viable and available, and to avoid "redefining" them within the
> new vocabulary. However, I'm not aware of any guidance on how such
> reuses are to be documented within (newer) vocabularies and ontologies.
>
> ---
>
> # First Approach - using rdfs:isDefinedBy
>
> I've noticed Protege's outputs contain (externally) defined classes and
> annotations within an ontology - and I haven't come across any
> annotations over external concepts. There is nothing in the output that
> indicates the terms are "external", other than manually comparing
> ontology IRI with term IRI.
>
> WIDOCO's best practices (https://w3id.org/widoco/bestPractices) suggests
> using rdfs:isDefinedBy to indicate the origin of the term, so this can
> be utilised to document the original vocabulary the term came from.
> Using this, perhaps it is possible to provide labels, definitions, etc.
> as needed - with rdfs:isDefinedBy indicating the terms is being reused
> from an external source.
>
> <original ontology ex:A>
> :Concept a rdfs:Class ; rdfs:label "Concept" .
>
> <new ontology ex:B>
> :Concept a rdfs:Class ;
>    rdfs:label "New Concept" ;
>    rdfs:isDefinedBy ex:A ;
>    rdfs:comment "We use Concept to do ..." .
>
> ---
>
> # Second Approach: simple comment using skos:scopeNote
>
> So my attempt at a simple solution is to just use skos:scopeNote over
> the concept explaining how that concept is expected to be used.
>
> <new ontology A>
> external:Concept skos:scopeNote "We use this Concept as ..." .
>
> ---
>
> Problems: what happens the original and new ontologies are combined in
> one graph - there will be duplicate labels, comments, etc. Would this be
> a problem? I don't think so, since they both are documentations from
> respective ontologies, but I'm not sure if this may cause a problem in
> some other use-case.
>
> Since I'm not aware of any examples of tooling supporting the use of
> either skos:scopeNote or rdfs:isDefinedBy to distinguish between
> external and current concepts, I'm unsure which option is better. I
> prefer the first one since it explicitly indicates the external source
> of a concept, but thought I'd ask the community before rushing ahead and
> using it in code.
>
> Regards,
> --
> ---
> Harshvardhan J. Pandit, Ph.D
> Research Fellow
> ADAPT Centre, Trinity College Dublin
> https://harshp.com/
>
>

---
Ghislain Atemezing, Ph.D
R&D Director, MONDECA
Paris, France www.mondeca.com

Received on Friday, 12 August 2022 10:35:45 UTC