|
37 | 37 | import org.apache.jena.rdf.model.Statement;
|
38 | 38 | import org.apache.jena.vocabulary.RDF;
|
39 | 39 | import org.apache.jena.vocabulary.XSD;
|
40 |
| -import org.eclipse.esmf.aspectmodel.urn.AspectModelUrn; |
41 |
| - |
42 |
| -import org.eclipse.esmf.aspectmodel.vocabulary.SAMM; |
43 |
| -import org.eclipse.esmf.samm.KnownVersion; |
44 | 40 | import org.eclipse.esmf.aspectmodel.resolver.exceptions.InvalidModelException;
|
45 | 41 | import org.eclipse.esmf.aspectmodel.resolver.services.DataType;
|
46 | 42 | import org.eclipse.esmf.aspectmodel.resolver.services.ExtendedXsdDataType;
|
| 43 | +import org.eclipse.esmf.aspectmodel.urn.AspectModelUrn; |
| 44 | +import org.eclipse.esmf.aspectmodel.vocabulary.Namespace; |
| 45 | +import org.eclipse.esmf.aspectmodel.vocabulary.SAMM; |
47 | 46 | import org.eclipse.esmf.aspectmodel.vocabulary.SAMMC;
|
48 | 47 | import org.eclipse.esmf.aspectmodel.vocabulary.SAMME;
|
49 |
| -import org.eclipse.esmf.aspectmodel.vocabulary.Namespace; |
50 | 48 | import org.eclipse.esmf.aspectmodel.vocabulary.UNIT;
|
| 49 | +import org.eclipse.esmf.characteristic.Code; |
| 50 | +import org.eclipse.esmf.characteristic.Collection; |
| 51 | +import org.eclipse.esmf.characteristic.Duration; |
| 52 | +import org.eclipse.esmf.characteristic.Either; |
| 53 | +import org.eclipse.esmf.characteristic.Enumeration; |
| 54 | +import org.eclipse.esmf.characteristic.Measurement; |
| 55 | +import org.eclipse.esmf.characteristic.Quantifiable; |
| 56 | +import org.eclipse.esmf.characteristic.Set; |
| 57 | +import org.eclipse.esmf.characteristic.SingleEntity; |
| 58 | +import org.eclipse.esmf.characteristic.SortedSet; |
| 59 | +import org.eclipse.esmf.characteristic.State; |
| 60 | +import org.eclipse.esmf.characteristic.StructuredValue; |
| 61 | +import org.eclipse.esmf.characteristic.TimeSeries; |
| 62 | +import org.eclipse.esmf.characteristic.Trait; |
| 63 | +import org.eclipse.esmf.constraint.EncodingConstraint; |
| 64 | +import org.eclipse.esmf.constraint.FixedPointConstraint; |
| 65 | +import org.eclipse.esmf.constraint.LanguageConstraint; |
| 66 | +import org.eclipse.esmf.constraint.LengthConstraint; |
| 67 | +import org.eclipse.esmf.constraint.LocaleConstraint; |
| 68 | +import org.eclipse.esmf.constraint.RangeConstraint; |
| 69 | +import org.eclipse.esmf.constraint.RegularExpressionConstraint; |
51 | 70 | import org.eclipse.esmf.metamodel.AbstractEntity;
|
52 | 71 | import org.eclipse.esmf.metamodel.Aspect;
|
53 |
| -import org.eclipse.esmf.metamodel.ModelElement; |
54 | 72 | import org.eclipse.esmf.metamodel.Characteristic;
|
55 |
| -import org.eclipse.esmf.characteristic.Code; |
56 |
| -import org.eclipse.esmf.characteristic.Collection; |
57 | 73 | import org.eclipse.esmf.metamodel.CollectionValue;
|
58 | 74 | import org.eclipse.esmf.metamodel.ComplexType;
|
59 | 75 | import org.eclipse.esmf.metamodel.Constraint;
|
60 |
| -import org.eclipse.esmf.characteristic.Duration; |
61 |
| -import org.eclipse.esmf.characteristic.Either; |
62 |
| -import org.eclipse.esmf.constraint.EncodingConstraint; |
63 | 76 | import org.eclipse.esmf.metamodel.EntityInstance;
|
64 |
| -import org.eclipse.esmf.characteristic.Enumeration; |
65 | 77 | import org.eclipse.esmf.metamodel.Event;
|
66 |
| -import org.eclipse.esmf.constraint.FixedPointConstraint; |
67 | 78 | import org.eclipse.esmf.metamodel.HasProperties;
|
| 79 | +import org.eclipse.esmf.metamodel.ModelElement; |
68 | 80 | import org.eclipse.esmf.metamodel.NamedElement;
|
69 |
| -import org.eclipse.esmf.constraint.LanguageConstraint; |
70 |
| -import org.eclipse.esmf.constraint.LengthConstraint; |
71 |
| -import org.eclipse.esmf.constraint.LocaleConstraint; |
72 |
| -import org.eclipse.esmf.characteristic.Measurement; |
73 | 81 | import org.eclipse.esmf.metamodel.Operation;
|
74 | 82 | import org.eclipse.esmf.metamodel.Property;
|
75 |
| -import org.eclipse.esmf.characteristic.Quantifiable; |
76 | 83 | import org.eclipse.esmf.metamodel.QuantityKind;
|
77 |
| -import org.eclipse.esmf.constraint.RangeConstraint; |
78 |
| -import org.eclipse.esmf.constraint.RegularExpressionConstraint; |
79 | 84 | import org.eclipse.esmf.metamodel.Scalar;
|
80 | 85 | import org.eclipse.esmf.metamodel.ScalarValue;
|
81 |
| -import org.eclipse.esmf.characteristic.Set; |
82 |
| -import org.eclipse.esmf.characteristic.SingleEntity; |
83 |
| -import org.eclipse.esmf.characteristic.SortedSet; |
84 |
| -import org.eclipse.esmf.characteristic.State; |
85 |
| -import org.eclipse.esmf.characteristic.StructuredValue; |
86 |
| -import org.eclipse.esmf.characteristic.TimeSeries; |
87 |
| -import org.eclipse.esmf.characteristic.Trait; |
88 | 86 | import org.eclipse.esmf.metamodel.Type;
|
89 | 87 | import org.eclipse.esmf.metamodel.Unit;
|
90 | 88 | import org.eclipse.esmf.metamodel.datatypes.LangString;
|
| 89 | +import org.eclipse.esmf.metamodel.impl.BoundDefinition; |
91 | 90 | import org.eclipse.esmf.metamodel.visitor.AspectVisitor;
|
| 91 | +import org.eclipse.esmf.samm.KnownVersion; |
92 | 92 |
|
93 | 93 | /**
|
94 | 94 | * AspectVisitor that translates an {@link Aspect} into the corresponding {@link Model}.
|
@@ -175,7 +175,8 @@ private Model serializeDescriptions( final Resource elementResource, final Named
|
175 | 175 |
|
176 | 176 | @SuppressWarnings( "squid:S2250" )
|
177 | 177 | // Amount of elements in list is regarding amount of properties in Aspect Model. Even in bigger aspects this should not lead to performance issues
|
178 |
| - private Model serializePropertiesOrParameters( final Resource elementResource, final HasProperties element, final org.apache.jena.rdf.model.Property theProperty ) { |
| 178 | + private Model serializePropertiesOrParameters( final Resource elementResource, final HasProperties element, |
| 179 | + final org.apache.jena.rdf.model.Property theProperty ) { |
179 | 180 | final Model model = ModelFactory.createDefaultModel();
|
180 | 181 | final List<RDFNode> propertiesList = new ArrayList<>();
|
181 | 182 | if ( resourceList.contains( elementResource ) ) {
|
@@ -388,10 +389,14 @@ public ElementModel visitRangeConstraint( final RangeConstraint rangeConstraint,
|
388 | 389 | .flatMap( maxValue -> maxValue.accept( this, rangeConstraint ).getFocusElement().stream() )
|
389 | 390 | .map( literal -> createStatement( resource, sammc.maxValue(), literal ) )
|
390 | 391 | .forEach( model::add );
|
391 |
| - model.add( resource, sammc.lowerBoundDefinition(), |
392 |
| - sammc.resource( rangeConstraint.getLowerBoundDefinition().toString().replace( " ", "_" ).toUpperCase() ) ); |
393 |
| - model.add( resource, sammc.upperBoundDefinition(), |
394 |
| - sammc.resource( rangeConstraint.getUpperBoundDefinition().toString().replace( " ", "_" ).toUpperCase() ) ); |
| 392 | + if ( rangeConstraint.getLowerBoundDefinition() != BoundDefinition.OPEN ) { |
| 393 | + model.add( resource, sammc.lowerBoundDefinition(), |
| 394 | + sammc.resource( rangeConstraint.getLowerBoundDefinition().toString().replace( " ", "_" ).toUpperCase() ) ); |
| 395 | + } |
| 396 | + if ( rangeConstraint.getUpperBoundDefinition() != BoundDefinition.OPEN ) { |
| 397 | + model.add( resource, sammc.upperBoundDefinition(), |
| 398 | + sammc.resource( rangeConstraint.getUpperBoundDefinition().toString().replace( " ", "_" ).toUpperCase() ) ); |
| 399 | + } |
395 | 400 | return new ElementModel( model, Optional.of( resource ) );
|
396 | 401 | }
|
397 | 402 |
|
|
0 commit comments