Comment("Attributi di classe-----------------------------------------") DataPropertyRange(nomeMaestra xsd:string) DataPropertyDomain(nomeMaestra Maestra) SubClassOf(Maestra DataMinCardinality(1 nomeMaestra)) FunctionalDataProperty(nomeMaestra) DataPropertyRange(anzianita xsd:int) DataPropertyDomain(anzianita Maestra) SubClassOf(Maestra DataMinCardinality(1 anzianita)) FunctionalDataProperty(anzianita) DataPropertyRange(nomeClasse xsd:string) DataPropertyDomain(nomeClasse Classe) SubClassOf(Classe DataMinCardinality(1 nomeClasse)) FunctionalDataProperty(nomeClasse) DataPropertyRange(nomeBambino xsd:string) DataPropertyDomain(nomeBambino Bambino) SubClassOf(Bambino DataMinCardinality(1 nomeBambino)) FunctionalDataProperty(nomeBambino) DataPropertyRange(eta xsd:int) DataPropertyDomain(eta Bambino) SubClassOf(Bambino DataMinCardinality(1 eta)) FunctionalDataProperty(eta) DataPropertyRange(pannolino xsd:int) DataPropertyDomain(pannolino BambinoNonScol) SubClassOf(BambinoNonScol DataMinCardinality(1 pannolino)) FunctionalDataProperty(pannolino) Comment("Specializzazioni fra classi-------------------------------") SubClassOf(ClasseDiScol Classe) SubClassOf(BambinoNonScol Bambino) Comment("Associazioni e cardinalità-------------------------------") ObjectPropertyDomain(insegna Maestra) ObjectPropertyRange(insegna Classe) SubClassOf(Classe ObjectMinCardinality(1 InverseObjectPropertyOf(insegna))) Comment("insegna non può essere definita funzionale perchè specializzata da insegnaScol") ObjectPropertyDomain(assegnato Bambino) ObjectPropertyRange(assegnato Classe) SubClassOf(Bambino ObjectMinCardinality(1 assegnato)) Comment("assegnato non può essere definita funzionale perchè specializzata da assegnatoScol") ObjectPropertyDomain(insegnaScol Maestra) ObjectPropertyRange(insegnaScol ClasseDiScol) FunctionalObjectProperty(InverseObjectPropertyOf(insegnaScol)) SubClassOf(ClasseDiScol ObjectMinCardinality(1 InverseObjectPropertyOf(insegnaScol))) ObjectPropertyDomain(assegnatoScol BambinoNonScol) ObjectPropertyRange(assegnatoScol ClasseDiScol) SubClassOf(Bambino ObjectMinCardinality(1 assegnatoScol)) SubClassOf(ClasseDiScol ObjectMinCardinality(1 InverseObjectPropertyOf(assegnatoScol))) FunctionalObjectProperty(assegnatoScol) Comment("Specializzazioni fra ruoli----------------------------------") SubObjectPropertyOf(insegnaScol insegna) SubObjectPropertyOf(assegnatoScol assegnato)