Search in sources :

Example 1 with ReasonSet

use of eu.xsdi.mdl.model.reason.ReasonSet in project hale by halestudio.

the class ReasonContentProvider method getChildren.

@Override
public Object[] getChildren(Object parentElement) {
    Object[] result;
    if (parentElement instanceof Reason) {
        Reason r = (Reason) parentElement;
        result = new Object[2];
        if (r.getReasonRule() != null) {
            result[0] = r.getReasonRule().getSet1();
            result[1] = r.getReasonRule().getSet2();
        } else {
            result = new Object[0];
        }
    } else if (parentElement instanceof ReasonSet) {
        ReasonSet rs = (ReasonSet) parentElement;
        if (rs.getSubSet() != null) {
            result = new Object[] { rs.getSubSet() };
        } else {
            result = new Object[0];
        }
    } else {
        result = new Object[0];
    }
    return result;
}
Also used : ReasonSet(eu.xsdi.mdl.model.reason.ReasonSet) Reason(eu.xsdi.mdl.model.Reason)

Example 2 with ReasonSet

use of eu.xsdi.mdl.model.reason.ReasonSet in project hale by halestudio.

the class MismatchRuleRepository method getCellbasedRules.

public static List<ReasonRule> getCellbasedRules() {
    ReasonSet rs1 = new ReasonSet();
    List<ReasonCondition> conditions1 = new ArrayList<ReasonCondition>();
    conditions1.add(new ReasonCondition(// to be applied to all elements
    null, // no value filter
    null, // selected Characteristic for this Mismatch
    EntityCharacteristic.AttributeCardinalityConstraint));
    rs1.setConditions(conditions1);
    ReasonSet rs2 = new ReasonSet();
    List<ReasonCondition> conditions2 = new ArrayList<ReasonCondition>();
    conditions2.add(new ReasonCondition(// to be applied to all elements
    null, // no value filter
    null, // selected Characteristic for this Mismatch
    EntityCharacteristic.AttributeCardinalityConstraint));
    rs2.setConditions(conditions2);
    ReasonRule rr1 = new ReasonRule(rs1, rs2);
    return null;
}
Also used : ReasonRule(eu.xsdi.mdl.model.reason.ReasonRule) ReasonSet(eu.xsdi.mdl.model.reason.ReasonSet) ArrayList(java.util.ArrayList) ReasonCondition(eu.xsdi.mdl.model.reason.ReasonCondition)

Example 3 with ReasonSet

use of eu.xsdi.mdl.model.reason.ReasonSet in project hale by halestudio.

the class MismatchPropertiesBlock method getDummyCell.

private Object getDummyCell() {
    Mismatch a = new Mismatch(MismatchType.AggregationLevelMismatch);
    a.setReason(new Reason(new FeatureClass(new About("FC1")), new FeatureClass(new About("FC2")), EntityCharacteristic.AssociationCardinalityConstraint));
    a.getConsequences().add(new Consequence());
    a.getConsequences().add(new Consequence());
    a.getConsequences().add(new Consequence());
    a.setProvenance("HALE MDL Inference Engine");
    Mismatch b = new Mismatch(MismatchType.StructureMismatch);
    b.setReason(new Reason(new Property(new About("Prop1Name")), new Property(new About("Prop2Name")), EntityCharacteristic.AttributeTypeConstraint));
    b.getReason().setReasonRule(new ReasonRule(new ReasonSet("Prop1Name"), new ReasonSet("Prop2Name")));
    List<ReasonCondition> conditions = new ArrayList<ReasonCondition>();
    conditions.add(new ReasonCondition("attributeName", "attributeFilterValue", null));
    b.getReason().getReasonRule().getSet1().setConditions(conditions);
    b.getReason().getReasonRule().getSet1().setSubSet(new ReasonSet("SubProp1Name"));
    b.getConsequences().add(new Consequence());
    b.setProvenance("User");
    Mismatch c = new Mismatch(MismatchType.AbstractionMismatch);
    c.setReason(new Reason(new Property(new About("Prop3Name")), new Property(new About("Prop4Name")), EntityCharacteristic.AttributeDerivedPopulatedValues));
    c.getReason().setReasonRule(new ReasonRule(new ReasonSet("Prop3Name"), new ReasonSet("Prop4Name")));
    c.getConsequences().add(new Consequence());
    c.getConsequences().add(new Consequence());
    c.setProvenance("HALE MDL Inference Engine");
    MismatchCell mc = new MismatchCell();
    mc.getMismatches().add(a);
    mc.getMismatches().add(b);
    mc.getMismatches().add(c);
    return mc;
}
Also used : ReasonRule(eu.xsdi.mdl.model.reason.ReasonRule) ReasonSet(eu.xsdi.mdl.model.reason.ReasonSet) ArrayList(java.util.ArrayList) Consequence(eu.xsdi.mdl.model.Consequence) ReasonCondition(eu.xsdi.mdl.model.reason.ReasonCondition) MismatchCell(eu.xsdi.mdl.model.MismatchCell) Mismatch(eu.xsdi.mdl.model.Mismatch) FeatureClass(eu.esdihumboldt.commons.goml.omwg.FeatureClass) Property(eu.esdihumboldt.commons.goml.omwg.Property) Reason(eu.xsdi.mdl.model.Reason) About(eu.esdihumboldt.commons.goml.rdf.About)

Aggregations

ReasonSet (eu.xsdi.mdl.model.reason.ReasonSet)3 Reason (eu.xsdi.mdl.model.Reason)2 ReasonCondition (eu.xsdi.mdl.model.reason.ReasonCondition)2 ReasonRule (eu.xsdi.mdl.model.reason.ReasonRule)2 ArrayList (java.util.ArrayList)2 FeatureClass (eu.esdihumboldt.commons.goml.omwg.FeatureClass)1 Property (eu.esdihumboldt.commons.goml.omwg.Property)1 About (eu.esdihumboldt.commons.goml.rdf.About)1 Consequence (eu.xsdi.mdl.model.Consequence)1 Mismatch (eu.xsdi.mdl.model.Mismatch)1 MismatchCell (eu.xsdi.mdl.model.MismatchCell)1