Commit 742b7875 authored by Matthias Betz's avatar Matthias Betz
Browse files

fixed schematron tests, with new schematron format

parent 1bc2d658
Pipeline #1605 passed with stage
in 1 minute and 51 seconds
......@@ -116,7 +116,7 @@ public class BoundingBoxCalculator {
private static void findMinMax(Vector3d low, Vector3d high, CityObject co) {
for (Geometry geom : co.getGeometries()) {
if (geom.getVertices() == null) {
continue;
geom.updateVertices();
}
for (Vertex v : geom.getVertices()) {
if (v.getX() < low.getX()) {
......
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
<!-- semantic requirements SimStadt monthly energy balance -->
<ns prefix="gml" uri="http://www.opengis.net/gml"/>
<ns prefix="bldg" uri="http://www.opengis.net/citygml/building/2.0"/>
<pattern>
<rule context="//Building | //bldg:Building">
<assert test="@gml:id | @id">Attribute gml:id is missing in one building. </assert>
<assert test="count(lod1Solid) = 1"><value-of select="@gml:id | @id"/>: SE_MISSING_ELEMENT lod1Solid</assert>
<assert test="count(yearOfConstruction) &gt;= 1"><value-of select="@gml:id | @id"/>: SE_MISSING_ELEMENT yearOfConstruction</assert>
<assert test="count(function) = 1"><value-of select="@gml:id | @id"/>: SE_MISSING_ELEMENT function</assert>
</rule>
<rule context="//BuildingPart | //bldg:BuildingPart">
<assert test="@gml:id | @id"><value-of select="@gml:id | @id"/>: Attribute gml:id is missing in one building part.</assert>
<assert test="count(lod1Solid) = 1"><value-of select="@gml:id | @id"/>: SE_MISSING_ELEMENT lod1Solid</assert>
<rule context="//*:Building">
<assert test="count(*:lod2Solid) = 1"><value-of select="@gml:id | @id"/>||||SEM_ATTRIBUTE_MISSING||lod1Solid||false</assert>
<assert test="count(*:yearOfConstruction) &gt;= 1"><value-of select="@gml:id | @id"/>||||SEM_ATTRIBUTE_MISSING||yearOfConstruction||false</assert>
<assert test="count(*:function) = 1"><value-of select="@gml:id | @id"/>||||SEM_ATTRIBUTE_MISSING||function||false</assert>
<assert test="*:doubleAttribute[@name = 'Volume'] &gt; 0 and *:doubleAttribute[@name = 'Volume'] &lt; 5000"><value-of select="@gml:id | @id"/>||||SEM_ATTRIBUTE_WRONG_VALUE||volume||true</assert>
</rule>
<rule context="//*:Building//*:RoofSurface">
<assert test="count(function) = 1"><value-of select="ancestor::*:Building/@*:id"/>||<value-of select="@gml:id | @id"/>||SEM_ATTRIBUTE_MISSING||function||false</assert>
</rule>
</pattern>
</schema>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment