es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Existe una propiedad RDF común que indique una revisión compatible de una clase?

Estoy lidiando con una migración de esquema de datos RDF donde quiero indicar genéricamente que una determinada clase es la nueva versión de una clase antigua, pero que las instancias de esa clase antigua también son instancias de la nueva clase. Para las clases ?oldClass y ?newClass, me gustaría hacer una declaración como esta:

?oldClass :isAlso ?newClass .

Entonces, si tuviéramos una instancia ex:a como esta:

ex:a rdf:type ex:C1 .

y tuviéramos una nueva versión de ex:C1, ex:C2, entonces

ex:C1 :isAlso ex:C2 .

implica que

ex:a rdf:type ex:C2 .

pero no es cierto que

ex:a1 rdf:type ex:C2 .

implique

ex:a1 rdf:type ex:C1 .

Podría agregar triples adicionales ?x rdf:type ex:C2 para cada triple ?x rdf:type ex:C1, pero no quiero agregar todos estos triples adicionales ya que puedo realizar la inferencia/consulta sobre la marcha de manera bastante económica y almacenar esta información de manera eficiente es una prioridad. Me gustaría usar una propiedad bien conocida si es posible.

He considerado y rechazado:
owl:equivalentClass: la relación que quiero no es reflexiva.
rdfs:subClassOf: la relación que quiero no se extiende a subclases de la clase antigua.

¿Necesito simplemente definir una nueva propiedad, :isAlso, con la semántica que describo? Prefiero usar algo que ya se esté utilizando generalmente para que las declaraciones que genero sean interpretadas correctamente por las herramientas existentes.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Basándose en los requisitos y en las opciones rechazadas, parece que la mejor solución en este caso es definir una nueva propiedad :isAlso. Aunque puede que no sea una propiedad muy conocida, es una propiedad específica que se puede utilizar de manera consistente durante todo el proceso de migración para indicar la relación entre las clases antiguas y nuevas. Además, utilizar una propiedad específica con una semántica clara puede ayudar a evitar confusiones y posibles errores que puedan surgir al utilizar una propiedad más genérica.

Comments are closed.