/* * Copyright (c) 2010 Mysema Ltd. * All rights reserved. * */ package com.mysema.rdfbean.owl; import java.util.EnumSet; import java.util.Set; import com.mysema.rdfbean.annotations.ClassMapping; import com.mysema.rdfbean.annotations.Predicate; import com.mysema.rdfbean.model.RDF; import com.mysema.rdfbean.model.UID; import com.mysema.rdfbean.rdfs.RDFProperty; /** * @author sasa * */ @ClassMapping(ns = OWL.NS) public class ObjectProperty extends RDFProperty { @Predicate private ObjectProperty inverseOf; /** * TransitiveProperty, SymmetricProperty or InverseFunctionalProperty */ @Predicate(ns = RDF.NS, ln = "type", ignoreInvalid = true) private Set<ObjectPropertyFeature> objectPropertyFeatures = EnumSet.noneOf(ObjectPropertyFeature.class); public ObjectProperty() { } public ObjectProperty(UID id) { super(id); } public void addObjectPropertyFeature(ObjectPropertyFeature feature) { objectPropertyFeatures.add(feature); } public ObjectProperty getInverseOf() { return inverseOf; } public Set<ObjectPropertyFeature> getObjectPropertyFeatures() { return objectPropertyFeatures; } }