You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by su...@apache.org on 2011/08/04 17:03:37 UTC
svn commit: r1153900 - in /incubator/stanbol/trunk/cmsadapter:
core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/
jcr/src/main/java/org/apache/stanbol/cmsadapter/jcr/processor/
Author: suat
Date: Thu Aug 4 15:03:36 2011
New Revision: 1153900
URL: http://svn.apache.org/viewvc?rev=1153900&view=rev
Log:
-Setting type of the individual is changed while parsing an object property. Target individual's type is set as its own type.
-Drop out the logic which creates ranges as union class according to restriction of property definitions
Modified:
incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java
incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/PropertyProcesser.java
incubator/stanbol/trunk/cmsadapter/jcr/src/main/java/org/apache/stanbol/cmsadapter/jcr/processor/JCRNodeTypeLifter.java
Modified: incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java?rev=1153900&r1=1153899&r2=1153900&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java (original)
+++ incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java Thu Aug 4 15:03:36 2011
@@ -26,7 +26,6 @@ import org.apache.felix.scr.annotations.
import org.apache.felix.scr.annotations.Service;
import org.apache.stanbol.cmsadapter.servicesapi.helper.OntologyResourceHelper;
import org.apache.stanbol.cmsadapter.servicesapi.mapping.MappingEngine;
-import org.apache.stanbol.cmsadapter.servicesapi.model.web.CMSObject;
import org.apache.stanbol.cmsadapter.servicesapi.model.web.ObjectTypeDefinition;
import org.apache.stanbol.cmsadapter.servicesapi.model.web.PropType;
import org.apache.stanbol.cmsadapter.servicesapi.model.web.decorated.DObjectAdapter;
@@ -34,7 +33,6 @@ import org.apache.stanbol.cmsadapter.ser
import org.apache.stanbol.cmsadapter.servicesapi.model.web.decorated.DPropertyDefinition;
import org.apache.stanbol.cmsadapter.servicesapi.processor.Processor;
import org.apache.stanbol.cmsadapter.servicesapi.processor.ProcessorProperties;
-import org.apache.stanbol.cmsadapter.servicesapi.repository.RepositoryAccess;
import org.apache.stanbol.cmsadapter.servicesapi.repository.RepositoryAccessException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -42,9 +40,7 @@ import org.slf4j.LoggerFactory;
import com.hp.hpl.jena.ontology.DatatypeProperty;
import com.hp.hpl.jena.ontology.ObjectProperty;
import com.hp.hpl.jena.ontology.OntClass;
-import com.hp.hpl.jena.rdf.model.RDFList;
import com.hp.hpl.jena.rdf.model.Resource;
-import com.hp.hpl.jena.vocabulary.OWL;
/**
* This processer can process CMS Objects of type {@link ObjectTypeDefinition}. A type definition corresponds
@@ -128,65 +124,13 @@ public class ObjectTypeProcessor impleme
private void processProperties(DObjectType objectType, OntClass subjectClass, MappingEngine engine) throws RepositoryAccessException {
for (DPropertyDefinition propDef : objectType.getPropertyDefinitions()) {
- RepositoryAccess accessor = engine.getRepositoryAccess();
- Object session = engine.getSession();
OntologyResourceHelper orh = engine.getOntologyResourceHelper();
if ((propDef.getPropertyType() == PropType.NAME) || (propDef.getPropertyType() == PropType.PATH)
|| (propDef.getPropertyType() == PropType.REFERENCE)) {
- List<String> constraints = propDef.getValueConstraints();
- List<CMSObject> referencedObjects = new ArrayList<CMSObject>();
-
- if (propDef.getPropertyType() == PropType.NAME) {
- for (String constraint : constraints) {
- try {
- referencedObjects.addAll(accessor.getNodeByName(constraint, session));
- } catch (RepositoryAccessException e) {
- logger.warn("Error while getting referenced value {} ", constraint, e);
- }
- }
-
- } else if (propDef.getPropertyType() == PropType.PATH) {
- for (String constraint : constraints) {
- try {
- referencedObjects.addAll(accessor.getNodeByPath(constraint, session));
- } catch (RepositoryAccessException e) {
- logger.warn("Error while getting referenced value {} ", constraint, e);
- }
- }
-
- } else if (propDef.getPropertyType() == PropType.REFERENCE) {
- for (String constraint : constraints) {
- try {
- referencedObjects.addAll(accessor.getNodeById(constraint, session));
- } catch (RepositoryAccessException e) {
- logger.warn("Error while getting referenced value {} ", constraint, e);
- }
- }
- }
-
- Resource rangeClass = null;
- if (referencedObjects.size() == 0) {
- rangeClass = OWL.Thing;
-
- } else if (referencedObjects.size() == 1) {
- rangeClass = orh.createOntClassByCMSObject(referencedObjects.get(0));
-
- if (rangeClass == null) {
- logger.warn("Failed create class for range value {}", referencedObjects.get(0)
- .getLocalname());
- }
-
- } else {
- RDFList rdfList = engine.getOntModel().createList();
- for (CMSObject referencedObject : referencedObjects) {
- rdfList = rdfList.cons(orh.createOntClassByCMSObject(referencedObject));
- }
- rangeClass = orh.createUnionClass(rdfList);
- }
ObjectProperty op = orh.createObjectPropertyByPropertyDefinition(propDef.getInstance(),
- Arrays.asList(new Resource[] {subjectClass}), Arrays.asList(new Resource[] {rangeClass}));
+ Arrays.asList(new Resource[] {subjectClass}), new ArrayList<Resource>());
if (op == null) {
logger.warn("Failed to create ObjectProperty for property definition {}",
Modified: incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/PropertyProcesser.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/PropertyProcesser.java?rev=1153900&r1=1153899&r2=1153900&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/PropertyProcesser.java (original)
+++ incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/PropertyProcesser.java Thu Aug 4 15:03:36 2011
@@ -322,12 +322,11 @@ public class PropertyProcesser {
return;
}
- OntResource individualType = ontologyResourceHelper.createOntClassByReference(contentObject
- .getInstance().getObjectTypeRef());
-
for (CMSObject referencedObject : referencedObjects) {
+ OntResource targetIndividualType = ontologyResourceHelper
+ .createOntClassByReference(referencedObject.getObjectTypeRef());
Individual ind = ontologyResourceHelper.createIndividualByCMSObject(referencedObject,
- individualType);
+ targetIndividualType);
if (ind != null) {
individual.addProperty(objectProperty, ind);
} else {
Modified: incubator/stanbol/trunk/cmsadapter/jcr/src/main/java/org/apache/stanbol/cmsadapter/jcr/processor/JCRNodeTypeLifter.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/jcr/src/main/java/org/apache/stanbol/cmsadapter/jcr/processor/JCRNodeTypeLifter.java?rev=1153900&r1=1153899&r2=1153900&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/jcr/src/main/java/org/apache/stanbol/cmsadapter/jcr/processor/JCRNodeTypeLifter.java (original)
+++ incubator/stanbol/trunk/cmsadapter/jcr/src/main/java/org/apache/stanbol/cmsadapter/jcr/processor/JCRNodeTypeLifter.java Thu Aug 4 15:03:36 2011
@@ -18,7 +18,6 @@ package org.apache.stanbol.cmsadapter.jc
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.List;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
@@ -31,19 +30,15 @@ import org.apache.stanbol.cmsadapter.jcr
import org.apache.stanbol.cmsadapter.servicesapi.helper.CMSAdapterVocabulary;
import org.apache.stanbol.cmsadapter.servicesapi.helper.OntologyResourceHelper;
import org.apache.stanbol.cmsadapter.servicesapi.mapping.MappingEngine;
-import org.apache.stanbol.cmsadapter.servicesapi.model.web.CMSObject;
import org.apache.stanbol.cmsadapter.servicesapi.model.web.ObjectTypeDefinition;
import org.apache.stanbol.cmsadapter.servicesapi.model.web.PropType;
import org.apache.stanbol.cmsadapter.servicesapi.repository.RepositoryAccess;
-import org.apache.stanbol.cmsadapter.servicesapi.repository.RepositoryAccessException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.hp.hpl.jena.ontology.DatatypeProperty;
import com.hp.hpl.jena.ontology.ObjectProperty;
import com.hp.hpl.jena.ontology.OntClass;
-import com.hp.hpl.jena.ontology.OntModel;
-import com.hp.hpl.jena.rdf.model.RDFList;
import com.hp.hpl.jena.rdf.model.Resource;
import com.hp.hpl.jena.vocabulary.OWL;
@@ -54,13 +49,11 @@ public class JCRNodeTypeLifter {
private Session session;
private RepositoryAccess accessor;
private OntologyResourceHelper ontologyResourceHelper;
- private OntModel jcrOntModel;
-
+
public JCRNodeTypeLifter(MappingEngine mappingEngine) {
this.engine = mappingEngine;
this.session = (Session) engine.getSession();
this.ontologyResourceHelper = this.engine.getOntologyResourceHelper();
- this.jcrOntModel = this.engine.getOntModel();
this.accessor = this.engine.getRepositoryAccessManager()
.getRepositoryAccess(this.engine.getSession());
if (this.accessor == null) {
@@ -107,63 +100,9 @@ public class JCRNodeTypeLifter {
|| (propDef.getPropertyType() == PropType.PATH)
|| (propDef.getPropertyType() == PropType.REFERENCE)) {
- List<String> constraints = propDef.getValueConstraint();
- List<CMSObject> referencedObjects = new ArrayList<CMSObject>();
-
- if (propDef.getPropertyType() == PropType.NAME) {
- for (String constraint : constraints) {
- try {
- referencedObjects
- .addAll(accessor.getNodeByName(constraint, this.session));
- } catch (RepositoryAccessException e) {
- logger.warn("Error while getting referenced value {} ", constraint, e);
- }
- }
-
- } else if (propDef.getPropertyType() == PropType.PATH) {
- for (String constraint : constraints) {
- try {
- referencedObjects
- .addAll(accessor.getNodeByPath(constraint, this.session));
- } catch (RepositoryAccessException e) {
- logger.warn("Error while getting referenced value {} ", constraint, e);
- }
- }
-
- } else if (propDef.getPropertyType() == PropType.REFERENCE) {
- for (String constraint : constraints) {
- try {
- referencedObjects.addAll(accessor.getNodeById(constraint, this.session));
- } catch (RepositoryAccessException e) {
- logger.warn("Error while getting referenced value {} ", constraint, e);
- }
- }
- }
-
- Resource rangeClass = null;
- if (referencedObjects.size() == 0) {
- rangeClass = OWL.Thing;
-
- } else if (referencedObjects.size() == 1) {
- rangeClass = ontologyResourceHelper.createOntClassByCMSObject(referencedObjects
- .get(0));
-
- if (rangeClass == null) {
- logger.warn("Failed create class for range value {}", referencedObjects
- .get(0).getLocalname());
- }
-
- } else {
- RDFList rdfList = jcrOntModel.createList();
- for (CMSObject referencedObject : referencedObjects) {
- rdfList = rdfList.cons(ontologyResourceHelper
- .createOntClassByCMSObject(referencedObject));
- }
- rangeClass = ontologyResourceHelper.createUnionClass(rdfList);
- }
ObjectProperty op = ontologyResourceHelper.createObjectPropertyByPropertyDefinition(
propDef, Arrays.asList(new Resource[] {nodeTypeClass}),
- Arrays.asList(new Resource[] {rangeClass}));
+ new ArrayList<Resource>());
if (op == null) {
logger.warn("Failed to create ObjectProperty for property definition {}",