Skip to main content
Question

How can I test CityGML attribute's value?


I have a CityGML dataset that I want to test if its value is not in a range of values (codelist). There are generic attributes that are easy to test with the Tester transformer. These look like this:

<gen:stringAttribute name="DatenquelleDachhoehe">

 

<gen:value>1000</gen:value>

 

</gen:stringAttribute>

 

<gen:stringAttribute name="DatenquelleLage">

 

<gen:value>1000</gen:value>

 

</gen:stringAttribute>

 

Others look like this:

<bldg:roofType>3100</bldg:roofType>

 

<bldg:measuredHeight uom="urn:adv:uom:m">7.808</bldg:measuredHeight>

 

<bldg:storeysAboveGround>2</bldg:storeysAboveGround>

How can I test these attributes? Thx

2 replies

erik_jan
Contributor
Forum|alt.badge.img+19
  • Contributor
  • January 4, 2016

I would create code lists in for example XLS or CSV.

Then read both the code lists and the CityGML into a FME Workspace and use the FeatureMerger transformer to merge both datasets.

All not merged features from the CityGML dataset will have a value for the tested attribute that is not in the code list.

Hope this helps.


  • Author
  • January 10, 2016

 

@erik_jan Thanks for the hint. I have done it now with a Tester. I can only test the attributes which look like name="DatenquelleDachhoehe"> and value>1000<. Does anybody know how I can test this attribute <bldg:roofType>3100</bldg:roofType>? Normally I need a name and a value to use the Tester. I need a workflow that replaces the value for roofType when the values is not in "1000,2100,2200,3100,3200,3300,3400,3500,3600,3700,3800,3900,4000,5000,9999" with "values is incorrect". Does anyone have any idea?


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings