Clases y prototipos
at domingo, diciembre 13, 2009
No sólo le costaba comprender que
el símbolo genérico perro abarcara tantos individuos
dispares de diversos tamaños y diversa forma;
lemolestaba que
el perro de las tres y catorce (visto de perfil)
tuviera el mismo nombre que
el perro de las tres y cuarto (visto de frente).
Funes el memorioso
Jorge Luis Borges - 1944
Al igualque en muchos lenguajes de programación orientados a objetos (OOP), los vocabularios y ontologías RDF se modelan basados en clases, donde se distingue entre clase e individual. Existe otra forma demodelar, basada en prototipos, donde no se hace tal distinción y sólo existen objetos.
Como se señala en la documentación de javascript, en OOP un lenguaje basado en prototipos tiene la noción de unobjeto prototipo, un objeto utilizado como una plantilla de la cual se obtienen las propiedades iniciales de un nuevo objeto. Cualquier objeto puede especificar sus propias propiedades, ya sea cuando secrea o en tiempo de ejecución. Además, cualquier objeto puede ser asociado como el prototipo de otro objeto, permitiendo que el segundo objeto comparta las propiedades del primer objeto.
Lasventajas de usar clases en la descripción de ontología y vocabularios son muchas, entre ellas:
Definir cardinalidad, rango y dominio de propiedades.
Definir reglas lógicas, como son: transitividad,simetría y equivalencia de propiedades.
Definir operadores de conjuntos, como son: unión, intersección, complemento, disjunción de clases.
En la práctica, todo lo anterior se obtiene al utilizar RDFS yOWL.
También existen desventajas al momento de modelar usando clases, ya que como se describe en "Classes vs. Prototypes - Some Philosophical and Historical Observations (1996)" se tendrá:
No todoslos conceptos se pueden modelar con clases.
No existe una jerarquía de clases óptima.
Los diseños son basados en consensos.
Los modelos son sólo lo suficientemente buenos.
El proceso de...
Regístrate para leer el documento completo.