【问题标题】:XML, How to improve this part of code?XML,如何改进这部分代码?
【发布时间】:2017-11-17 12:35:47
【问题描述】:

我在geoserver上做彩色地图,需要检查所有建筑物都是灰色的,但并不是所有的建筑物都有“是”字段“建筑物”,有些在“建筑物”中有不同的关键词“土地利用”领域。 如果我这样坑代码,我有错误:

第 72 行:cvc-complex-type.2.4.a:发现以元素“And”开头的无效内容。 '{"www.opengis.net/ogc":comparisonOps, "www opengis net/ogc":spatialOps, "www opengis net/ogc":logicOps}' 之一是预期的。 (不能放链接)

代码:

 <Rule>
               <ogc:Filter>
               <ogc:Or>

              <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>building</ogc:PropertyName>
                <ogc:Literal>yes</ogc:Literal>
              </ogc:PropertyIsEqualTo>

              <And>
                <And>
                  <And>
                    <And>
                      <And>
                        <And>
                     <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>basin</ogc:Literal>
              </ogc:PropertyIsEqualTo>
                      <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>farmland</ogc:Literal>
              </ogc:PropertyIsEqualTo>
              </And>
                         <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal> forest </ogc:Literal>
              </ogc:PropertyIsEqualTo>
                      <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>grass</ogc:Literal>
              </ogc:PropertyIsEqualTo>
              </And>
                <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>greenhouse_horticulture</ogc:Literal>
              </ogc:PropertyIsEqualTo>
                      <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>landfill</ogc:Literal>
              </ogc:PropertyIsEqualTo>
              </And>
               <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>meadow</ogc:Literal>
              </ogc:PropertyIsEqualTo>
                      <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>orchard</ogc:Literal>
              </ogc:PropertyIsEqualTo>
              </And>
              <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>plant_nursery </ogc:Literal>
              </ogc:PropertyIsEqualTo>
                      <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>recreation_ground </ogc:Literal>
              </ogc:PropertyIsEqualTo>
              </And>
              <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>village_green</ogc:Literal>
              </ogc:PropertyIsEqualTo>
                      <ogc:PropertyIsEqualTo>
                <ogc:PropertyName>landuse</ogc:PropertyName>
                <ogc:Literal>vineyard</ogc:Literal>
              </ogc:PropertyIsEqualTo>
              </And>

            </ogc:Or>

      </ogc:Filter>

      <PolygonSymbolizer>
        <Fill>
          <CssParameter name="fill">
            <ogc:Literal>#A5A5A5</ogc:Literal>
          </CssParameter>
          <CssParameter name="fill-opacity">
            <ogc:Literal>1.0</ogc:Literal>
          </CssParameter>
        </Fill>
        <Stroke>
          <CssParameter name="stroke">
            <ogc:Literal>#6E6E6E</ogc:Literal>
          </CssParameter>


        </Stroke>
      </PolygonSymbolizer>
    </Rule>

【问题讨论】:

  • 未来这类问题可能会在gis.stackexchange.com 上得到更好的答案,或者至少给你一个 SLD 标签:-)
  • 好吧,对不起(:

标签: xml openstreetmap geoserver


【解决方案1】:

&lt;And&gt; 元素也必须使用 ogc 命名空间。您必须将&lt;And&gt; 替换为&lt;ogc:And&gt;(当然也包括结束标签)。

【讨论】:

  • 你也可能想要 ,因为没有什么能匹配所有这些?
猜你喜欢
  • 2023-04-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多