Changes between Version 8 and Version 9 of CSW2020TestSuiteResults


Ignore:
Timestamp:
Jan 26, 2012, 6:56:44 AM (12 years ago)
Author:
fxp
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • CSW2020TestSuiteResults

    v8 v9  
    1 = CSW 2.0.2 ISO Profil testsuite =
    2 Test made using teamengine : http://sourceforge.net/project/showfiles.php?group_id=172853&package_id=197871&release_id=589119
    3 
    4 == Running testsuite ==
     1[[PageOutline(2,,inline)]]
     2
     3
     4= CSW 2.0.2 testsuite =
     5Test made using teamengine :
     6 * http://sourceforge.net/project/showfiles.php?group_id=172853&package_id=197871&release_id=589119
     7 * http://cite.opengeospatial.org/te2/.
     8
     9== Running the testsuite ==
    510
    611 * Create clean install with no data
    712{{{
    813cd $GEONETWORK_HOME
    9 cd gast
    10 java -jar gast.jar -setup
    1114cd ../bin
    1215./start-geonetwork.sh
     
    1619 * Run testsuite
    1720
    18 
    19 == GeoNetwork 2.2.0 ==
    20 Implement CSW 2.0.1.
    21 
    22 == GeoNetwork trunk ==
    23 See [wiki:CSW].
    24 
    25  * One test failed: GetRecords-ValidFilter due to Spatial Filter embedded in an OR statement. Require more changes to spatial searcher.
    26 
     21{{{
     22./test.sh -source=/catalogue/OGC-CSW-2.0.2/cite/engine/beta/trunk/scripts/csw-2.0.2-latest/ctl -workdir=test -logdir=log > csw.log
     23./viewlog.sh -logdir=log -session=s0006
     24}}}
     25
     26== GeoNetwork 2.7.x (rev 8557) ==
     27
     28 * GeoNetwork rev 8557
     29 * Date : 2012/01/25
     30 * Todo : Fix http://trac.osgeo.org/geonetwork/ticket/762 and http://trac.osgeo.org/geonetwork/ticket/761 and run again
     31
     32{{{
     33csw:Main
     34Failure
     35Executed tests
     36capability-tests Failure
     37GetCapabilities-GET Success
     38csw-2.0.2-GetCapabilities-tc1.1 Success
     39SchematronValidatingParser Success
     40csw-2.0.2-GetCapabilities-tc1.2 Success
     41SchematronValidatingParser Success
     42csw-2.0.2-GetCapabilities-tc1.3 Success
     43SchematronValidatingParser Success
     44csw-2.0.2-GetCapabilities-tc2.1 Success
     45SchematronValidatingParser Success
     46csw-2.0.2-GetCapabilities-tc3.1 Success
     47SchematronValidatingParser Success
     48csw-2.0.2-GetCapabilities-tc4.1 Success
     49SchematronValidatingParser Success
     50csw-2.0.2-GetCapabilities-tc5.1 Success
     51SchematronValidatingParser Success
     52csw-2.0.2-GetCapabilities-tc5.2 Success
     53SchematronValidatingParser Success
     54csw-2.0.2-GetCapabilities-tc6.1 Success
     55csw-2.0.2-GetCapabilities-tc7.1 Success
     56SchematronValidatingParser Success
     57csw-2.0.2-GetCapabilities-tc7.2 Success
     58csw-2.0.2-GetCapabilities-tc8.1 Success
     59
     60DescribeRecord-POST Success
     61csw-2.0.2-DescribeRecord-tc1.1 Success
     62SchematronValidatingParser Success
     63csw-2.0.2-DescribeRecord-tc2.1 Success
     64SchematronValidatingParser Success
     65csw-2.0.2-DescribeRecord-tc3.1 Success
     66SchematronValidatingParser Success
     67csw-2.0.2-DescribeRecord-tc4.1 Success
     68csw-2.0.2-DescribeRecord-tc5.1 Success
     69SchematronValidatingParser Success
     70csw-2.0.2-DescribeRecord-tc6.1 Success
     71SchematronValidatingParser Success
     72csw-2.0.2-DescribeRecord-tc7.1 Success
     73SchematronValidatingParser Success
     74
     75GetRecordById-GET Success
     76csw-2.0.2-GetRecordById-tc1.1 Success
     77csw-2.0.2-GetRecordById-tc1.2 Success
     78csw-2.0.2-GetRecordById-tc2.1 Success
     79csw-2.0.2-GetRecordById-tc2.2 Success
     80csw-2.0.2-GetRecordById-tc3.1 Success
     81csw-2.0.2-GetRecordById-tc4.1 Success
     82SchematronValidatingParser Success
     83csw-2.0.2-GetRecordById-tc5.1 Success
     84SchematronValidatingParser Success
     85csw-2.0.2-GetRecordById-tc6.1 Success
     86SchematronValidatingParser Success
     87
     88GetRecords-POST Failure
     89csw-2.0.2-GetRecords-tc1.1 Failure
     90SchematronValidatingParser Failure
     91csw-2.0.2-GetRecords-tc2.1 Success
     92SchematronValidatingParser Success
     93csw-2.0.2-GetRecords-tc2.2 Success
     94SchematronValidatingParser Success
     95csw-2.0.2-GetRecords-tc3.1 Success
     96csw-2.0.2-GetRecords-tc4.1 Success
     97SchematronValidatingParser Success
     98csw-2.0.2-GetRecords-tc4.2 Failure
     99csw-2.0.2-GetRecords-tc5.1 Failure
     100csw-2.0.2-GetRecords-tc5.2 Failure
     101csw-2.0.2-GetRecords-tc6.1 Success
     102csw-2.0.2-GetRecords-tc6.2 Failure
     103csw-2.0.2-GetRecords-tc7.1 Success
     104SchematronValidatingParser Success
     105csw-2.0.2-GetRecords-tc8.1 Success
     106csw-2.0.2-GetRecords-tc8.2 Success
     107csw-2.0.2-GetRecords-tc9.1 Failure
     108SchematronValidatingParser Failure
     109csw-2.0.2-GetRecords-tc10.1 Failure
     110SchematronValidatingParser Failure
     111csw-2.0.2-GetRecords-tc11.1 Success
     112csw-2.0.2-GetRecords-tc11.2 Failure
     113csw-2.0.2-GetRecords-tc12.1 Failure
     114csw-2.0.2-GetRecords-tc13.1 Failure
     115csw-2.0.2-GetRecords-tc14.1 Success
     116csw-2.0.2-GetRecords-tc14.2 Failure
     117csw-2.0.2-GetRecords-tc15.1 Success
     118SchematronValidatingParser Success
     119csw-2.0.2-GetRecords-tc16.1 Success
     120SchematronValidatingParser Success
     121csw-2.0.2-GetRecords-tc16.2 Failure
     122csw-2.0.2-GetRecords-tc17.1 Failure
     123csw-2.0.2-GetRecords-tc17.2 Failure
     124csw-2.0.2-GetRecords-tc18.1 Failure
     125csw-2.0.2-GetRecords-tc19.1 Success
     126csw-2.0.2-GetRecords-tc20.1 Failure
     127csw-2.0.2-GetRecords-tc21.1 Failure
     128csw-2.0.2-GetRecords-tc22.1 Success
     129csw-2.0.2-GetRecords-tc23.1 Success
     130csw-2.0.2-GetRecords-tc24.1 Success
     131csw-2.0.2-GetRecords-tc25.1 Success
     132SchematronValidatingParser Success
     133csw-2.0.2-GetRecords-tc26.1 Success
     134SchematronValidatingParser Success
     135}}}
     136
     137
     138=== test: csw:csw-2.0.2-GetRecords-tc1.1 ===
     139
     140session: s0001/d41e6546_1/d41e6423_1/d41e2619_1
     141Assertion: A GetRecords request that omits all optional elements must produce a response containing only a summary of the result set.
     142Test result:Failure
     143Executed tests:
     144ctl:SchematronValidatingParserFailure
     145
     146
     147Submitted request:
     148Method=
     149                                POSTURL=
     150                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     151                                NONE.
     152Request body:
     153{{{
     154<csw:GetRecords service="CSW" version="2.0.2"
     155  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     156  xmlns:ows="http://www.opengis.net/ows"
     157  xmlns:p="http://teamengine.sourceforge.net/parsers"
     158  xmlns:gml="http://www.opengis.net/gml"
     159  xmlns:parsers="http://www.occamlab.com/te/parsers"
     160  xmlns:ogc="http://www.opengis.net/ogc"
     161  xmlns:saxon="http://saxon.sf.net/"
     162  xmlns:te="http://www.occamlab.com/te"
     163  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     164  xmlns:tec="java:com.occamlab.te.TECore"
     165  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     166  xmlns:ctl="http://www.occamlab.com/ctl"
     167  xmlns:xlink="http://www.w3.org/1999/xlink"
     168  xmlns:xi="http://www.w3.org/2001/XInclude"
     169  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     170  xmlns:dc="http://purl.org/dc/elements/1.1/"
     171  xmlns:dct="http://purl.org/dc/terms/">
     172  <csw:Query typeNames="csw:Record">
     173   <csw:ElementSetName>brief</csw:ElementSetName>
     174  </csw:Query>
     175 </csw:GetRecords>
     176}}}
     177
     178test: ctl:SchematronValidatingParser
     179
     180session: s0001/d41e6546_1/d41e6423_1/d41e2619_1/d41e2854_1
     181Assertion:Validate an XML instance against a Schematron schema using the given phase.
     182Message
     183Total number of errors detected: 1
     184Message
     185Error 1: Line 21 - assertion failed:
     186  csw:SearchResults/@numberOfRecordsReturned must have the value zero.
     187
     188Test result:Failure
     189
     190==== Comment ====
     191 * OGC 07-006: p34 resultType Zero or one (Conditional) Default values specified by protocol binding or application profile
     192 * OGC 07-045: p66 RESULTTYPE Optional. Default value is “hits”.
     193So this test could not expect "a summary of the result set".
     194
     195
     196
     197
     198=== test: csw:csw-2.0.2-GetRecords-tc4.2 ===
     199
     200session: s0001/d41e6546_1/d41e6423_1/d41e2645_1
     201Assertion: The response to a GetRecords request that specifies an ad hoc view and sorting criteria must include the corresponding csw:Record representations in the correct sort order.
     202Message
     203[FAILURE] Search results are not sorted correctly by dc:date in descending order.
     204Message
     205, , 2003-05-09Z
     206Test result:Failure
     207Submitted request:
     208Method=
     209                                POSTURL=
     210                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     211                                NONE.
     212Request body:
     213{{{
     214<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     215  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     216  xmlns:ows="http://www.opengis.net/ows"
     217  xmlns:p="http://teamengine.sourceforge.net/parsers"
     218  xmlns:gml="http://www.opengis.net/gml"
     219  xmlns:parsers="http://www.occamlab.com/te/parsers"
     220  xmlns:ogc="http://www.opengis.net/ogc"
     221  xmlns:saxon="http://saxon.sf.net/"
     222  xmlns:te="http://www.occamlab.com/te"
     223  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     224  xmlns:tec="java:com.occamlab.te.TECore"
     225  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     226  xmlns:ctl="http://www.occamlab.com/ctl"
     227  xmlns:xlink="http://www.w3.org/1999/xlink"
     228  xmlns:xi="http://www.w3.org/2001/XInclude"
     229  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     230  xmlns:dc="http://purl.org/dc/elements/1.1/"
     231  xmlns:dct="http://purl.org/dc/terms/">
     232  <csw:Query typeNames="csw:Record">
     233   <csw:ElementName>dc:identifier</csw:ElementName>
     234   <csw:ElementName>dc:type</csw:ElementName>
     235   <csw:ElementName>dc:date</csw:ElementName>
     236   <ogc:SortBy>
     237    <ogc:SortProperty>
     238     <ogc:PropertyName>dc:date</ogc:PropertyName>
     239     <ogc:SortOrder>DESC</ogc:SortOrder>
     240    </ogc:SortProperty>
     241   </ogc:SortBy>
     242  </csw:Query>
     243 </csw:GetRecords>
     244}}}
     245
     246==== Comment ====
     247
     248Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     249{{{
     250<parameter name="Date" field="createDate" type="AdditionalQueryables" />
     251}}}
     252
     253
     254=== test: csw:csw-2.0.2-GetRecords-tc5.1 ===
     255
     256session: s0001/d41e6546_1/d41e6423_1/d41e2650_1
     257Assertion: The response to a GetRecords request that includes an ogc:Filter having a BBOX operator must include all matching record representations.
     258Message
     259[FAILURE] Missing or invalid response entity.
     260Test result:Failure
     261Submitted request:
     262Method=
     263                                POSTURL=
     264                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     265                                NONE.
     266Request body:
     267{{{
     268<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     269  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     270  xmlns:ows="http://www.opengis.net/ows"
     271  xmlns:p="http://teamengine.sourceforge.net/parsers"
     272  xmlns:gml="http://www.opengis.net/gml"
     273  xmlns:parsers="http://www.occamlab.com/te/parsers"
     274  xmlns:ogc="http://www.opengis.net/ogc"
     275  xmlns:saxon="http://saxon.sf.net/"
     276  xmlns:te="http://www.occamlab.com/te"
     277  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     278  xmlns:tec="java:com.occamlab.te.TECore"
     279  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     280  xmlns:ctl="http://www.occamlab.com/ctl"
     281  xmlns:xlink="http://www.w3.org/1999/xlink"
     282  xmlns:xi="http://www.w3.org/2001/XInclude"
     283  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     284  xmlns:dc="http://purl.org/dc/elements/1.1/"
     285  xmlns:dct="http://purl.org/dc/terms/">
     286  <csw:Query typeNames="csw:Record">
     287   <csw:ElementName>dc:identifier</csw:ElementName>
     288   <csw:ElementName>ows:BoundingBox</csw:ElementName>
     289   <csw:Constraint version="1.1.0">
     290    <ogc:Filter>
     291     <ogc:BBOX>
     292      <ogc:PropertyName>/ows:BoundingBox</ogc:PropertyName>
     293      <gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.11:4326">
     294       <gml:lowerCorner>47.0 -4.5</gml:lowerCorner>
     295       <gml:upperCorner>52.0 1.0</gml:upperCorner>
     296      </gml:Envelope>
     297     </ogc:BBOX>
     298    </ogc:Filter>
     299   </csw:Constraint>
     300  </csw:Query>
     301 </csw:GetRecords>
     302}}}
     303
     304==== Comment ====
     305
     306Failed on: test="not($response/*)" but request returned a response. Odd. CHECKME
     307
     308
     309=== test: csw:csw-2.0.2-GetRecords-tc5.2 ===
     310
     311session: s0001/d41e6546_1/d41e6423_1/d41e2655_1
     312Assertion: The response to a GetRecords request that includes an ogc:Filter having a spatial operator that does not refer to a geometry-valued property must include an exception report.
     313Message
     314[FAILURE] Missing or invalid response entity.
     315Test result:Failure
     316Submitted request:
     317Method=
     318                                POSTURL=
     319                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     320                                NONE.
     321Request body:
     322{{{
     323<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     324  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     325  xmlns:ows="http://www.opengis.net/ows"
     326  xmlns:p="http://teamengine.sourceforge.net/parsers"
     327  xmlns:gml="http://www.opengis.net/gml"
     328  xmlns:parsers="http://www.occamlab.com/te/parsers"
     329  xmlns:ogc="http://www.opengis.net/ogc"
     330  xmlns:saxon="http://saxon.sf.net/"
     331  xmlns:te="http://www.occamlab.com/te"
     332  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     333  xmlns:tec="java:com.occamlab.te.TECore"
     334  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     335  xmlns:ctl="http://www.occamlab.com/ctl"
     336  xmlns:xlink="http://www.w3.org/1999/xlink"
     337  xmlns:xi="http://www.w3.org/2001/XInclude"
     338  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     339  xmlns:dc="http://purl.org/dc/elements/1.1/"
     340  xmlns:dct="http://purl.org/dc/terms/">
     341  <csw:Query typeNames="csw:Record">
     342   <csw:ElementSetName>brief</csw:ElementSetName>
     343   <csw:Constraint version="1.1.0">
     344    <ogc:Filter>
     345     <ogc:BBOX>
     346      <ogc:PropertyName>dct:spatial</ogc:PropertyName>
     347      <gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.11:4326">
     348       <gml:lowerCorner>47.0 -4.5</gml:lowerCorner>
     349       <gml:upperCorner>52.0 1.0</gml:upperCorner>
     350      </gml:Envelope>
     351     </ogc:BBOX>
     352    </ogc:Filter>
     353   </csw:Constraint>
     354  </csw:Query>
     355 </csw:GetRecords>
     356}}}
     357
     358==== Comment ====
     359Spatial filter is applied to the records geometry whatever the property is. Only one geometry is defined per records (which could be a multipolygon).
     360
     361
     362
     363
     364=== test: csw:csw-2.0.2-GetRecords-tc6.2 ===
     365
     366session: s0001/d41e6546_1/d41e6423_1/d41e2666_1
     367Assertion: The response to a GetRecords request that includes an ogc:Filter having a PropertyIsEqualTo predicate (case-insensitive) must include all matching record representations.
     368Message
     369[FAILURE] Expected record is missing (urn:uuid:ab42a8c4-95e8-4630-bf79-33e59241605a).
     370Test result:Failure
     371Submitted request:
     372Method=
     373                                POSTURL=
     374                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     375                                NONE.
     376Request body:
     377{{{
     378<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     379  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     380  xmlns:ows="http://www.opengis.net/ows"
     381  xmlns:p="http://teamengine.sourceforge.net/parsers"
     382  xmlns:gml="http://www.opengis.net/gml"
     383  xmlns:parsers="http://www.occamlab.com/te/parsers"
     384  xmlns:ogc="http://www.opengis.net/ogc"
     385  xmlns:saxon="http://saxon.sf.net/"
     386  xmlns:te="http://www.occamlab.com/te"
     387  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     388  xmlns:tec="java:com.occamlab.te.TECore"
     389  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     390  xmlns:ctl="http://www.occamlab.com/ctl"
     391  xmlns:xlink="http://www.w3.org/1999/xlink"
     392  xmlns:xi="http://www.w3.org/2001/XInclude"
     393  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     394  xmlns:dc="http://purl.org/dc/elements/1.1/"
     395  xmlns:dct="http://purl.org/dc/terms/">
     396  <csw:Query typeNames="csw:Record">
     397   <csw:ElementSetName>brief</csw:ElementSetName>
     398   <csw:Constraint version="1.1.0">
     399    <ogc:Filter>
     400     <ogc:PropertyIsEqualTo matchCase="false">
     401      <ogc:PropertyName>dc:subject</ogc:PropertyName>
     402      <ogc:Literal>pHYSIOGRAPHy</ogc:Literal>
     403     </ogc:PropertyIsEqualTo>
     404    </ogc:Filter>
     405   </csw:Constraint>
     406  </csw:Query>
     407 </csw:GetRecords>
     408}}}
     409
     410==== Comment ====
     411
     412Keyword are using a org.apache.lucene.analysis.KeywordAnalyzer by default (see config-lucene.xml).
     413If user want a case insensitive search for Keyword, org.apache.lucene.analysis.standard.StandardAnalyzer could be used probably.
     414
     415
     416
     417=== test: csw:csw-2.0.2-GetRecords-tc9.1 ===
     418
     419session: s0001/d41e6546_1/d41e6423_1/d41e2686_1
     420Assertion: The response to a GetRecords request that includes an ogc:Filter having a PropertyIsGreaterThan predicate must include matching record representations.
     421Test result:Failure
     422Executed tests:
     423ctl:SchematronValidatingParserFailure
     424
     425
     426Submitted request:
     427Method=
     428                                POSTURL=
     429                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     430                                NONE.
     431Request body:
     432{{{
     433<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     434  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     435  xmlns:ows="http://www.opengis.net/ows"
     436  xmlns:p="http://teamengine.sourceforge.net/parsers"
     437  xmlns:gml="http://www.opengis.net/gml"
     438  xmlns:parsers="http://www.occamlab.com/te/parsers"
     439  xmlns:ogc="http://www.opengis.net/ogc"
     440  xmlns:saxon="http://saxon.sf.net/"
     441  xmlns:te="http://www.occamlab.com/te"
     442  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     443  xmlns:tec="java:com.occamlab.te.TECore"
     444  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     445  xmlns:ctl="http://www.occamlab.com/ctl"
     446  xmlns:xlink="http://www.w3.org/1999/xlink"
     447  xmlns:xi="http://www.w3.org/2001/XInclude"
     448  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     449  xmlns:dc="http://purl.org/dc/elements/1.1/"
     450  xmlns:dct="http://purl.org/dc/terms/">
     451  <csw:Query typeNames="csw:Record">
     452   <csw:ElementName>dc:identifier</csw:ElementName>
     453   <csw:ElementName>dc:type</csw:ElementName>
     454   <csw:ElementName>dc:date</csw:ElementName>
     455   <csw:Constraint version="1.1.0">
     456    <ogc:Filter>
     457     <ogc:PropertyIsGreaterThan>
     458      <ogc:PropertyName>dc:date</ogc:PropertyName>
     459      <ogc:Literal>2004-01-01Z</ogc:Literal>
     460     </ogc:PropertyIsGreaterThan>
     461    </ogc:Filter>
     462   </csw:Constraint>
     463  </csw:Query>
     464 </csw:GetRecords>
     465}}}
     466
     467
     468test: ctl:SchematronValidatingParser
     469
     470session: s0001/d41e6546_1/d41e6423_1/d41e2686_1/d41e4132_1
     471Assertion:Validate an XML instance against a Schematron schema using the given phase.
     472Message
     473Total number of errors detected: 1
     474Message
     475Error 1: Line 21 - assertion failed:
     476  csw:SearchResults/@numberOfRecordsMatched must be greater than zero.
     477
     478Test result:Failure
     479
     480==== Comment ====
     481
     482Same as csw:csw-2.0.2-GetRecords-tc4.2
     483Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     484{{{
     485<parameter name="Date" field="createDate" type="AdditionalQueryables" />
     486}}}
     487
     488
     489=== test: csw:csw-2.0.2-GetRecords-tc10.1 ===
     490
     491session: s0001/d41e6546_1/d41e6423_1/d41e2691_1
     492Assertion: The response to a GetRecords request that includes an ogc:Filter having a PropertyIsLessThan predicate must include matching record representations.
     493Test result:Failure
     494Executed tests:
     495ctl:SchematronValidatingParserFailure
     496
     497
     498Submitted request:
     499Method=
     500                                POSTURL=
     501                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     502                                NONE.
     503Request body:
     504{{{
     505<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     506  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     507  xmlns:ows="http://www.opengis.net/ows"
     508  xmlns:p="http://teamengine.sourceforge.net/parsers"
     509  xmlns:gml="http://www.opengis.net/gml"
     510  xmlns:parsers="http://www.occamlab.com/te/parsers"
     511  xmlns:ogc="http://www.opengis.net/ogc"
     512  xmlns:saxon="http://saxon.sf.net/"
     513  xmlns:te="http://www.occamlab.com/te"
     514  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     515  xmlns:tec="java:com.occamlab.te.TECore"
     516  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     517  xmlns:ctl="http://www.occamlab.com/ctl"
     518  xmlns:xlink="http://www.w3.org/1999/xlink"
     519  xmlns:xi="http://www.w3.org/2001/XInclude"
     520  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     521  xmlns:dc="http://purl.org/dc/elements/1.1/"
     522  xmlns:dct="http://purl.org/dc/terms/">
     523  <csw:Query typeNames="csw:Record">
     524   <csw:ElementName>dc:identifier</csw:ElementName>
     525   <csw:ElementName>dc:type</csw:ElementName>
     526   <csw:ElementName>dc:date</csw:ElementName>
     527   <csw:Constraint version="1.1.0">
     528    <ogc:Filter>
     529     <ogc:PropertyIsLessThan>
     530      <ogc:PropertyName>dc:date</ogc:PropertyName>
     531      <ogc:Literal>2006-05-01Z</ogc:Literal>
     532     </ogc:PropertyIsLessThan>
     533    </ogc:Filter>
     534   </csw:Constraint>
     535  </csw:Query>
     536 </csw:GetRecords>
     537}}}
     538
     539test: ctl:SchematronValidatingParser
     540
     541session: s0001/d41e6546_1/d41e6423_1/d41e2691_1/d41e4252_1
     542Assertion:Validate an XML instance against a Schematron schema using the given phase.
     543Message
     544Total number of errors detected: 1
     545Message
     546Error 1: Line 21 - assertion failed:
     547  csw:SearchResults/@numberOfRecordsMatched must be greater than zero.
     548
     549Test result:Failure
     550
     551
     552==== Comment ====
     553
     554Same as csw:csw-2.0.2-GetRecords-tc4.2
     555Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     556{{{
     557<parameter name="Date" field="createDate" type="AdditionalQueryables" />
     558}}}
     559
     560=== test: csw:csw-2.0.2-GetRecords-tc11.2 ===
     561
     562session: s0001/d41e6546_1/d41e6423_1/d41e2702_1
     563Assertion: The response to a GetRecords request that includes an ogc:Filter having a PropertyIsLike predicate must include matching record representations.
     564Message
     565[FAILURE] AT least one csw:Record element expected in response.
     566Test result:Failure
     567Submitted request:
     568Method=
     569                                POSTURL=
     570                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     571                                NONE.
     572Request body:
     573{{{
     574<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     575  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     576  xmlns:ows="http://www.opengis.net/ows"
     577  xmlns:p="http://teamengine.sourceforge.net/parsers"
     578  xmlns:gml="http://www.opengis.net/gml"
     579  xmlns:parsers="http://www.occamlab.com/te/parsers"
     580  xmlns:ogc="http://www.opengis.net/ogc"
     581  xmlns:saxon="http://saxon.sf.net/"
     582  xmlns:te="http://www.occamlab.com/te"
     583  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     584  xmlns:tec="java:com.occamlab.te.TECore"
     585  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     586  xmlns:ctl="http://www.occamlab.com/ctl"
     587  xmlns:xlink="http://www.w3.org/1999/xlink"
     588  xmlns:xi="http://www.w3.org/2001/XInclude"
     589  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     590  xmlns:dc="http://purl.org/dc/elements/1.1/"
     591  xmlns:dct="http://purl.org/dc/terms/">
     592  <csw:Query typeNames="csw:Record">
     593   <csw:ElementSetName>full</csw:ElementSetName>
     594   <csw:Constraint version="1.1.0">
     595    <ogc:Filter>
     596     <ogc:PropertyIsLike escapeChar="\" singleChar="?" wildCard="*">
     597      <ogc:PropertyName>dc:date</ogc:PropertyName>
     598      <ogc:Literal>200?-10-*</ogc:Literal>
     599     </ogc:PropertyIsLike>
     600    </ogc:Filter>
     601   </csw:Constraint>
     602  </csw:Query>
     603 </csw:GetRecords>
     604}}}
     605
     606==== Comment ====
     607
     608Same as csw:csw-2.0.2-GetRecords-tc4.2
     609Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     610{{{
     611<parameter name="Date" field="createDate" type="AdditionalQueryables" />
     612}}}
     613
     614=== test: csw:csw-2.0.2-GetRecords-tc12.1 ===
     615
     616session: s0001/d41e6546_1/d41e6423_1/d41e2707_1
     617Assertion: The response to a GetRecords request that includes an ogc:Filter having a PropertyIsLessThanOrEqualTo predicate must include matching record representations.
     618Message
     619[FAILURE] AT least two csw:Record elements expected in response.
     620Test result:Failure
     621Submitted request:
     622Method=
     623                                POSTURL=
     624                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     625                                NONE.
     626Request body:
     627{{{
     628<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     629  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     630  xmlns:ows="http://www.opengis.net/ows"
     631  xmlns:p="http://teamengine.sourceforge.net/parsers"
     632  xmlns:gml="http://www.opengis.net/gml"
     633  xmlns:parsers="http://www.occamlab.com/te/parsers"
     634  xmlns:ogc="http://www.opengis.net/ogc"
     635  xmlns:saxon="http://saxon.sf.net/"
     636  xmlns:te="http://www.occamlab.com/te"
     637  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     638  xmlns:tec="java:com.occamlab.te.TECore"
     639  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     640  xmlns:ctl="http://www.occamlab.com/ctl"
     641  xmlns:xlink="http://www.w3.org/1999/xlink"
     642  xmlns:xi="http://www.w3.org/2001/XInclude"
     643  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     644  xmlns:dc="http://purl.org/dc/elements/1.1/"
     645  xmlns:dct="http://purl.org/dc/terms/">
     646  <csw:Query typeNames="csw:Record">
     647   <csw:ElementName>dc:identifier</csw:ElementName>
     648   <csw:ElementName>dc:type</csw:ElementName>
     649   <csw:ElementName>dc:date</csw:ElementName>
     650   <csw:Constraint version="1.1.0">
     651    <ogc:Filter>
     652     <ogc:PropertyIsLessThanOrEqualTo>
     653      <ogc:PropertyName>dc:date</ogc:PropertyName>
     654      <ogc:Literal>2005-10-24Z</ogc:Literal>
     655     </ogc:PropertyIsLessThanOrEqualTo>
     656    </ogc:Filter>
     657   </csw:Constraint>
     658  </csw:Query>
     659 </csw:GetRecords>
     660}}}
     661
     662
     663==== Comment ====
     664
     665Same as csw:csw-2.0.2-GetRecords-tc4.2
     666Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     667{{{
     668<parameter name="Date" field="createDate" type="AdditionalQueryables" />
     669}}}
     670
     671
     672=== test: csw:csw-2.0.2-GetRecords-tc13.1 ===
     673
     674session: s0001/d41e6546_1/d41e6423_1/d41e2712_1
     675Assertion: The response to a GetRecords request that includes an ogc:Filter having a PropertyIsGreaterThanOrEqualTo predicate must include matching record representations.
     676Message
     677[FAILURE] AT least two csw:Record elements expected in response.
     678Test result:Failure
     679Submitted request:
     680Method=
     681                                POSTURL=
     682                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     683                                NONE.
     684Request body:
     685{{{
     686<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     687  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     688  xmlns:ows="http://www.opengis.net/ows"
     689  xmlns:p="http://teamengine.sourceforge.net/parsers"
     690  xmlns:gml="http://www.opengis.net/gml"
     691  xmlns:parsers="http://www.occamlab.com/te/parsers"
     692  xmlns:ogc="http://www.opengis.net/ogc"
     693  xmlns:saxon="http://saxon.sf.net/"
     694  xmlns:te="http://www.occamlab.com/te"
     695  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     696  xmlns:tec="java:com.occamlab.te.TECore"
     697  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     698  xmlns:ctl="http://www.occamlab.com/ctl"
     699  xmlns:xlink="http://www.w3.org/1999/xlink"
     700  xmlns:xi="http://www.w3.org/2001/XInclude"
     701  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     702  xmlns:dc="http://purl.org/dc/elements/1.1/"
     703  xmlns:dct="http://purl.org/dc/terms/">
     704  <csw:Query typeNames="csw:Record">
     705   <csw:ElementName>dc:identifier</csw:ElementName>
     706   <csw:ElementName>dc:type</csw:ElementName>
     707   <csw:ElementName>dc:date</csw:ElementName>
     708   <csw:Constraint version="1.1.0">
     709    <ogc:Filter>
     710     <ogc:PropertyIsGreaterThanOrEqualTo>
     711      <ogc:PropertyName>dc:date</ogc:PropertyName>
     712      <ogc:Literal>2006-03-26Z</ogc:Literal>
     713     </ogc:PropertyIsGreaterThanOrEqualTo>
     714    </ogc:Filter>
     715   </csw:Constraint>
     716  </csw:Query>
     717 </csw:GetRecords>
     718}}}
     719
     720
     721==== Comment ====
     722
     723Same as csw:csw-2.0.2-GetRecords-tc4.2
     724Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     725{{{
     726<parameter name="Date" field="createDate" type="AdditionalQueryables" />
     727}}}
     728
     729
     730=== test: csw:csw-2.0.2-GetRecords-tc14.2 ===
     731
     732session: s0001/d41e6546_1/d41e6423_1/d41e2722_1
     733Assertion: The response to a GetRecords request that includes an ogc:Filter having a Not logical predicate must include only matching record representations.
     734Message
     735[FAILURE] Missing or invalid response entity.
     736Test result:Failure
     737Submitted request:
     738Method=
     739                                POSTURL=
     740                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     741                                NONE.
     742Request body:
     743{{{
     744<csw:GetRecords maxRecords="20" resultType="results" service="CSW" version="2.0.2"
     745  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     746  xmlns:ows="http://www.opengis.net/ows"
     747  xmlns:p="http://teamengine.sourceforge.net/parsers"
     748  xmlns:gml="http://www.opengis.net/gml"
     749  xmlns:parsers="http://www.occamlab.com/te/parsers"
     750  xmlns:ogc="http://www.opengis.net/ogc"
     751  xmlns:saxon="http://saxon.sf.net/"
     752  xmlns:te="http://www.occamlab.com/te"
     753  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     754  xmlns:tec="java:com.occamlab.te.TECore"
     755  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     756  xmlns:ctl="http://www.occamlab.com/ctl"
     757  xmlns:xlink="http://www.w3.org/1999/xlink"
     758  xmlns:xi="http://www.w3.org/2001/XInclude"
     759  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     760  xmlns:dc="http://purl.org/dc/elements/1.1/"
     761  xmlns:dct="http://purl.org/dc/terms/">
     762  <csw:Query typeNames="csw:Record">
     763   <csw:ElementName>dc:identifier</csw:ElementName>
     764   <csw:ElementName>ows:BoundingBox</csw:ElementName>
     765   <csw:Constraint version="1.1.0">
     766    <ogc:Filter>
     767     <ogc:Not>
     768      <ogc:BBOX>
     769       <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
     770       <gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.11:4326">
     771        <gml:lowerCorner>60.0 12.0</gml:lowerCorner>
     772        <gml:upperCorner>70.0 20.0</gml:upperCorner>
     773       </gml:Envelope>
     774      </ogc:BBOX>
     775     </ogc:Not>
     776    </ogc:Filter>
     777   </csw:Constraint>
     778  </csw:Query>
     779 </csw:GetRecords>
     780}}}
     781
     782==== Comment ====
     783
     784On the test dataset, only 3 records have a bounding box. Only 2 of them are matching the spatial condition. And GeoNetwork does not consider records not having a bounding box to be part of this query because they don't have a property BoundingBox.
     785
     786Testsuite expect: "11-20 csw:Record elements expected in response"
     787
     788Minor improvement done: http://trac.osgeo.org/geonetwork/ticket/761
     789
     790
     791=== test: csw:csw-2.0.2-GetRecords-tc16.2 ===
     792
     793session: s0001/d41e6546_1/d41e6423_1/d41e2738_1
     794Assertion: The response to a GetRecords request that includes an ogc:Filter having the Or logical predicate must include only matching record representations.
     795Message
     796[FAILURE] Missing or invalid response entity.
     797Test result:Failure
     798Submitted request:
     799Method=
     800                                POSTURL=
     801                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     802                                NONE.
     803Request body:
     804{{{
     805<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     806  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     807  xmlns:ows="http://www.opengis.net/ows"
     808  xmlns:p="http://teamengine.sourceforge.net/parsers"
     809  xmlns:gml="http://www.opengis.net/gml"
     810  xmlns:parsers="http://www.occamlab.com/te/parsers"
     811  xmlns:ogc="http://www.opengis.net/ogc"
     812  xmlns:saxon="http://saxon.sf.net/"
     813  xmlns:te="http://www.occamlab.com/te"
     814  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     815  xmlns:tec="java:com.occamlab.te.TECore"
     816  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     817  xmlns:ctl="http://www.occamlab.com/ctl"
     818  xmlns:xlink="http://www.w3.org/1999/xlink"
     819  xmlns:xi="http://www.w3.org/2001/XInclude"
     820  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     821  xmlns:dc="http://purl.org/dc/elements/1.1/"
     822  xmlns:dct="http://purl.org/dc/terms/">
     823  <csw:Query typeNames="csw:Record">
     824   <csw:ElementName>dc:identifier</csw:ElementName>
     825   <csw:ElementName>dc:date</csw:ElementName>
     826   <csw:ElementName>ows:BoundingBox</csw:ElementName>
     827   <csw:Constraint version="1.1.0">
     828    <ogc:Filter>
     829     <ogc:Or>
     830      <ogc:BBOX>
     831       <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
     832       <gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.11:4326">
     833        <gml:lowerCorner>47.0 -4.5</gml:lowerCorner>
     834        <gml:upperCorner>52.0 1.0</gml:upperCorner>
     835       </gml:Envelope>
     836      </ogc:BBOX>
     837      <ogc:PropertyIsGreaterThan>
     838       <ogc:PropertyName>dc:date</ogc:PropertyName>
     839       <ogc:Literal>2006-01-01Z</ogc:Literal>
     840      </ogc:PropertyIsGreaterThan>
     841     </ogc:Or>
     842    </ogc:Filter>
     843   </csw:Constraint>
     844  </csw:Query>
     845 </csw:GetRecords>
     846}}}
     847
     848==== Comment ====
     849
     850In GeoNetwork, spatial criteria is applied as a Lucene filter after Lucene search. This makes the spatial filter a AND operator. Combining complex AND/OR with spatial filter requires to make the spatial search part of Lucene Core Query types. This is a non-trivial task.
     851
     852
     853=== test: csw:csw-2.0.2-GetRecords-tc17.1 ===
     854
     855session: s0001/d41e6546_1/d41e6423_1/d41e2743_1
     856Assertion: The response to a GetRecords request that includes an ogc:Filter having the And logical predicate must include only matching record representations.
     857Message
     858[FAILURE] 1-10 csw:SummaryRecord elements expected in response (0 included)
     859Test result:Failure
     860Submitted request:
     861Method=
     862                                POSTURL=
     863                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     864                                NONE.
     865Request body:
     866{{{
     867<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     868  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     869  xmlns:ows="http://www.opengis.net/ows"
     870  xmlns:p="http://teamengine.sourceforge.net/parsers"
     871  xmlns:gml="http://www.opengis.net/gml"
     872  xmlns:parsers="http://www.occamlab.com/te/parsers"
     873  xmlns:ogc="http://www.opengis.net/ogc"
     874  xmlns:saxon="http://saxon.sf.net/"
     875  xmlns:te="http://www.occamlab.com/te"
     876  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     877  xmlns:tec="java:com.occamlab.te.TECore"
     878  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     879  xmlns:ctl="http://www.occamlab.com/ctl"
     880  xmlns:xlink="http://www.w3.org/1999/xlink"
     881  xmlns:xi="http://www.w3.org/2001/XInclude"
     882  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     883  xmlns:dc="http://purl.org/dc/elements/1.1/"
     884  xmlns:dct="http://purl.org/dc/terms/">
     885  <csw:Query typeNames="csw:Record">
     886   <csw:ElementSetName>summary</csw:ElementSetName>
     887   <csw:Constraint version="1.1.0">
     888    <ogc:Filter>
     889     <ogc:And>
     890      <ogc:PropertyIsLike escapeChar="\" singleChar="?" wildCard="*">
     891       <ogc:PropertyName>dc:format</ogc:PropertyName>
     892       <ogc:Literal>image/*</ogc:Literal>
     893      </ogc:PropertyIsLike>
     894      <ogc:PropertyIsEqualTo>
     895       <ogc:PropertyName>dc:relation</ogc:PropertyName>
     896       <ogc:Literal>urn:uuid:9a669547-b69b-469f-a11f-2d875366bbdc</ogc:Literal>
     897      </ogc:PropertyIsEqualTo>
     898     </ogc:And>
     899    </ogc:Filter>
     900   </csw:Constraint>
     901  </csw:Query>
     902 </csw:GetRecords>
     903}}}
     904
     905==== Comment ====
     906
     907Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     908{{{
     909  <parameter name="Relation" field="relation" type="AdditionalQueryables" />
     910}}}
     911
     912
     913=== test: csw:csw-2.0.2-GetRecords-tc17.2 ===
     914
     915session: s0001/d41e6546_1/d41e6423_1/d41e2748_1
     916Assertion: The response to a GetRecords request that includes an ogc:Filter having the And logical predicate must include only matching record representations.
     917Message
     918[FAILURE] 1-10 csw:Record elements expected in response (0 included)
     919Test result:Failure
     920Submitted request:
     921Method=
     922                                POSTURL=
     923                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     924                                NONE.
     925Request body:
     926{{{
     927<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     928  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     929  xmlns:ows="http://www.opengis.net/ows"
     930  xmlns:p="http://teamengine.sourceforge.net/parsers"
     931  xmlns:gml="http://www.opengis.net/gml"
     932  xmlns:parsers="http://www.occamlab.com/te/parsers"
     933  xmlns:ogc="http://www.opengis.net/ogc"
     934  xmlns:saxon="http://saxon.sf.net/"
     935  xmlns:te="http://www.occamlab.com/te"
     936  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     937  xmlns:tec="java:com.occamlab.te.TECore"
     938  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     939  xmlns:ctl="http://www.occamlab.com/ctl"
     940  xmlns:xlink="http://www.w3.org/1999/xlink"
     941  xmlns:xi="http://www.w3.org/2001/XInclude"
     942  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     943  xmlns:dc="http://purl.org/dc/elements/1.1/"
     944  xmlns:dct="http://purl.org/dc/terms/">
     945  <csw:Query typeNames="csw:Record">
     946   <csw:ElementName>dc:identifier</csw:ElementName>
     947   <csw:ElementName>dc:date</csw:ElementName>
     948   <csw:ElementName>ows:BoundingBox</csw:ElementName>
     949   <csw:Constraint version="1.1.0">
     950    <ogc:Filter>
     951     <ogc:And>
     952      <ogc:BBOX>
     953       <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
     954       <gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.11:4326">
     955        <gml:lowerCorner>47.0 -4.5</gml:lowerCorner>
     956        <gml:upperCorner>52.0 1.0</gml:upperCorner>
     957       </gml:Envelope>
     958      </ogc:BBOX>
     959      <ogc:PropertyIsGreaterThan>
     960       <ogc:PropertyName>dc:date</ogc:PropertyName>
     961       <ogc:Literal>2006-01-01Z</ogc:Literal>
     962      </ogc:PropertyIsGreaterThan>
     963     </ogc:And>
     964    </ogc:Filter>
     965   </csw:Constraint>
     966  </csw:Query>
     967 </csw:GetRecords>
     968}}}
     969
     970==== Comment ====
     971
     972Same as csw:csw-2.0.2-GetRecords-tc4.2
     973Add in config-csw.xml http://trac.osgeo.org/geonetwork/ticket/762 :
     974{{{
     975<parameter name="Date" field="createDate" type="AdditionalQueryables" />
     976}}}
     977
     978
     979
     980=== test: csw:csw-2.0.2-GetRecords-tc18.1 ===
     981
     982session: s0001/d41e6546_1/d41e6423_1/d41e2753_1
     983Assertion: The response to a GetRecords request that includes an ogc:Filter having the And logical predicate must include the specified view of records that satisfy all constraints.
     984Message
     985[FAILURE] 1-10 csw:Record elements expected in response (0 included)
     986Test result:Failure
     987Submitted request:
     988Method=
     989                                POSTURL=
     990                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     991                                NONE.
     992Request body:
     993{{{
     994<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     995  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     996  xmlns:ows="http://www.opengis.net/ows"
     997  xmlns:p="http://teamengine.sourceforge.net/parsers"
     998  xmlns:gml="http://www.opengis.net/gml"
     999  xmlns:parsers="http://www.occamlab.com/te/parsers"
     1000  xmlns:ogc="http://www.opengis.net/ogc"
     1001  xmlns:saxon="http://saxon.sf.net/"
     1002  xmlns:te="http://www.occamlab.com/te"
     1003  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     1004  xmlns:tec="java:com.occamlab.te.TECore"
     1005  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     1006  xmlns:ctl="http://www.occamlab.com/ctl"
     1007  xmlns:xlink="http://www.w3.org/1999/xlink"
     1008  xmlns:xi="http://www.w3.org/2001/XInclude"
     1009  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     1010  xmlns:dc="http://purl.org/dc/elements/1.1/"
     1011  xmlns:dct="http://purl.org/dc/terms/">
     1012  <csw:Query typeNames="csw:Record">
     1013   <csw:ElementName>dc:identifier</csw:ElementName>
     1014   <csw:ElementName>dc:type</csw:ElementName>
     1015   <csw:ElementName>ows:BoundingBox</csw:ElementName>
     1016   <csw:Constraint version="1.1.0">
     1017    <ogc:Filter>
     1018     <ogc:And>
     1019      <ogc:Not>
     1020       <ogc:BBOX>
     1021        <ogc:PropertyName>ows:BoundingBox</ogc:PropertyName>
     1022        <gml:Envelope srsName="urn:x-ogc:def:crs:EPSG:6.11:4326">
     1023         <gml:lowerCorner>40.0 -9.0</gml:lowerCorner>
     1024         <gml:upperCorner>50.0 -5.0</gml:upperCorner>
     1025        </gml:Envelope>
     1026       </ogc:BBOX>
     1027      </ogc:Not>
     1028      <ogc:PropertyIsEqualTo matchCase="false">
     1029       <ogc:PropertyName>dc:type</ogc:PropertyName>
     1030       <ogc:Literal>HTTP://purl.org/dc/dcmitype/dataset</ogc:Literal>
     1031      </ogc:PropertyIsEqualTo>
     1032     </ogc:And>
     1033    </ogc:Filter>
     1034   </csw:Constraint>
     1035  </csw:Query>
     1036 </csw:GetRecords>
     1037}}}
     1038
     1039==== Comment ====
     1040
     1041Issue related to matchCase. Works with:
     1042{{{
     1043<ogc:PropertyIsEqualTo matchCase="false">
     1044       <ogc:PropertyName>dc:type</ogc:PropertyName>
     1045       <ogc:Literal>http://purl.org/dc/dcmitype/Dataset</ogc:Literal>
     1046      </ogc:PropertyIsEqualTo>
     1047}}}
     1048A StandardAnalyzer should fix it ?
     1049
     1050
     1051=== test: csw:csw-2.0.2-GetRecords-tc20.1 ===
     1052
     1053session: s0001/d41e6546_1/d41e6423_1/d41e2764_1
     1054Assertion: The csw:SummaryRecord view type cannot be queried. The response shall include an exception having @exceptionCode = &quot;InvalidParameterValue&quot; [10.2.5.3.3].
     1055Message
     1056[FAILURE] Missing or invalid response entity.
     1057Test result:Failure
     1058Submitted request:
     1059Method=
     1060                                POSTURL=
     1061                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     1062                                NONE.
     1063Request body:
     1064{{{
     1065<csw:GetRecords resultType="results" service="CSW" version="2.0.2"
     1066  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     1067  xmlns:ows="http://www.opengis.net/ows"
     1068  xmlns:p="http://teamengine.sourceforge.net/parsers"
     1069  xmlns:gml="http://www.opengis.net/gml"
     1070  xmlns:parsers="http://www.occamlab.com/te/parsers"
     1071  xmlns:ogc="http://www.opengis.net/ogc"
     1072  xmlns:saxon="http://saxon.sf.net/"
     1073  xmlns:te="http://www.occamlab.com/te"
     1074  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     1075  xmlns:tec="java:com.occamlab.te.TECore"
     1076  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     1077  xmlns:ctl="http://www.occamlab.com/ctl"
     1078  xmlns:xlink="http://www.w3.org/1999/xlink"
     1079  xmlns:xi="http://www.w3.org/2001/XInclude"
     1080  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     1081  xmlns:dc="http://purl.org/dc/elements/1.1/"
     1082  xmlns:dct="http://purl.org/dc/terms/">
     1083  <csw:Query typeNames="csw:SummaryRecord">
     1084   <csw:ElementSetName>summary</csw:ElementSetName>
     1085   <csw:Constraint version="1.1.0">
     1086    <ogc:Filter>
     1087     <ogc:PropertyIsLike escapeChar="\" singleChar="." wildCard="*">
     1088      <ogc:PropertyName>/dc:title</ogc:PropertyName>
     1089      <ogc:Literal>*lorem*</ogc:Literal>
     1090     </ogc:PropertyIsLike>
     1091    </ogc:Filter>
     1092   </csw:Constraint>
     1093  </csw:Query>
     1094 </csw:GetRecords>
     1095}}}
     1096
     1097==== Comment ====
     1098
     1099Typename defines "queryable entities in the catalogue's information model". In GeoNetwork, all entities are available and mapping may exist from one type to another.
     1100
     1101
     1102
     1103
     1104=== test: csw:csw-2.0.2-GetRecords-tc21.1 ===
     1105
     1106session: s0001/d41e6546_1/d41e6423_1/d41e2769_1
     1107Assertion: The csw:BriefRecord view type cannot be queried. The response shall include an exception having @exceptionCode = &quot;InvalidParameterValue&quot; [10.2.5.3.4].
     1108Message
     1109[FAILURE] Missing or invalid response entity.
     1110Test result:Failure
     1111Submitted request:
     1112Method=
     1113                                POSTURL=
     1114                                http://localhost:8080/geonetwork/srv/en/cswParameters:
     1115                                NONE.
     1116Request body:
     1117{{{
     1118<csw:GetRecordsresultType="results"service="CSW"version="2.0.2"
     1119  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
     1120  xmlns:ows="http://www.opengis.net/ows"
     1121  xmlns:p="http://teamengine.sourceforge.net/parsers"
     1122  xmlns:gml="http://www.opengis.net/gml"
     1123  xmlns:parsers="http://www.occamlab.com/te/parsers"
     1124  xmlns:ogc="http://www.opengis.net/ogc"
     1125  xmlns:saxon="http://saxon.sf.net/"
     1126  xmlns:te="http://www.occamlab.com/te"
     1127  xmlns:xs="http://www.w3.org/2001/XMLSchema"
     1128  xmlns:tec="java:com.occamlab.te.TECore"
     1129  xmlns:tems="java:com.occamlab.te.web.MonitorServlet"
     1130  xmlns:ctl="http://www.occamlab.com/ctl"
     1131  xmlns:xlink="http://www.w3.org/1999/xlink"
     1132  xmlns:xi="http://www.w3.org/2001/XInclude"
     1133  xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"
     1134  xmlns:dc="http://purl.org/dc/elements/1.1/"
     1135  xmlns:dct="http://purl.org/dc/terms/">
     1136  <csw:QuerytypeNames="csw:BriefRecord">
     1137   <csw:ElementSetName>brief</csw:ElementSetName>
     1138   <csw:Constraintversion="1.1.0">
     1139    <ogc:Filter>
     1140     <ogc:PropertyIsLikeescapeChar="\"singleChar="."wildCard="*">
     1141      <ogc:PropertyName>/dc:title</ogc:PropertyName>
     1142      <ogc:Literal>*lorem*</ogc:Literal>
     1143     </ogc:PropertyIsLike>
     1144    </ogc:Filter>
     1145   </csw:Constraint>
     1146  </csw:Query>
     1147 </csw:GetRecords>
     1148}}}
     1149
     1150
     1151==== Comment ====
     1152
     1153Typename defines "queryable entities in the catalogue's information model". In GeoNetwork, all entities are available and mapping may exist from one type to another.
     1154
     1155See [GeoNetwork-users] GeoNetwork Harvest: CSW node error on the ML for discussion about outputSchema.
     1156
     1157=== Test execution report - CSW 2.0.2 AP ISO ===
     1158TODO
     1159
     1160
     1161
     1162== GeoNetwork 2.4.x ==
     1163 * See [wiki:CSW].
     1164 * Tested in 2009
     1165 * One test failed: GetRecords-!ValidFilter due to Spatial Filter embedded in an OR statement. Require more changes to spatial searcher.
     1166
     1167=== CSW 2.0.2 ISO AP ===
    271168{{{
    281169Test csw:csw-main (s0002) Failed (Inherited Failure)
     
    871228
    881229
    89 = CSW 2.0.2 testsuite =
    90 Using : http://cite.opengeospatial.org/te2/ .
    91 
    92 == Running the testsuite ==
    93 
    94 {{{
    95 ./test.sh -source=/catalogue/OGC-CSW-2.0.2/cite/engine/beta/trunk/scripts/csw-2.0.2-latest/ctl -workdir=test -logdir=log > csw.log
    96 ./viewlog.sh -logdir=log -session=s0006
    97 }}}
    98 
    99 == Current status ==
     1230==== CSW 2.0.2 ====
    1001231{{{
    1011232
     
    2071338
    2081339
    209 == Comments ==
    2101340=== Issue ===
    2111341 * GeoTools error when resolving srsName="urn:x-ogc:def:crs:EPSG:6.11:4326" csw:csw-2.0.2-GetRecords-tc5.2
     
    2461376<RangeQuery fld="{ogc:PropertyName}" lowerTxt="{ogc:Literal}" inclusive="true"/>
    2471377}}}
    248  * csw:csw-2.0.2-GetRecords-tc14.1 : odd / StackOverflowError
     1378 * csw:csw-2.0.2-GetRecords-tc14.1 : odd / !StackOverflowError
    2491379{{{
    2501380  <stack>
    251     <at class="org.fao.geonet.kernel.search.spatial.OgcGenericFilters$GeomExtractor" file="OgcGenericFilters
     1381    <at class="org.fao.geonet.kernel.search.spatial.!OgcGenericFilters$GeomExtractor" file="OgcGenericFilters
    2521382.java" line="250" method="visit" />
    2531383}}}
    254  * csw:csw-2.0.2-GetRecords-tc14.2 : StackOverflowError
     1384 * csw:csw-2.0.2-GetRecords-tc14.2 : !StackOverflowError
    2551385 * csw:csw-2.0.2-GetRecords-tc17.1 : To be continued.
    2561386
    2571387
    2581388=== Fixed ===
    259  * CSW / Fix DescribeRecords exception according to input parameters as expected by testsuite.
    260  * CSW / Fix GetRecordById when multiple ids and one not found.
     1389 * CSW / Fix !DescribeRecords exception according to input parameters as expected by testsuite.
     1390 * CSW / Fix !GetRecordById when multiple ids and one not found.
    2611391 * CSW / Fix csw-record schema mapping, geonet:info element and ows:BoundingBox spatial indexing.
    2621392
     1393
     1394
     1395== GeoNetwork 2.2.0 ==
     1396Implement CSW 2.0.1.
     1397