aboutsummaryrefslogtreecommitdiffstats
path: root/document/src/test/vespaxmlparser
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@yahoo-inc.com>2016-06-15 23:09:44 +0200
committerJon Bratseth <bratseth@yahoo-inc.com>2016-06-15 23:09:44 +0200
commit72231250ed81e10d66bfe70701e64fa5fe50f712 (patch)
tree2728bba1131a6f6e5bdf95afec7d7ff9358dac50 /document/src/test/vespaxmlparser
Publish
Diffstat (limited to 'document/src/test/vespaxmlparser')
-rw-r--r--document/src/test/vespaxmlparser/alltypes.cfg101
-rw-r--r--document/src/test/vespaxmlparser/documentmanager.cfg109
-rw-r--r--document/src/test/vespaxmlparser/documentmanager2.cfg220
-rw-r--r--document/src/test/vespaxmlparser/test01.xml45
-rw-r--r--document/src/test/vespaxmlparser/test02.xml17
-rw-r--r--document/src/test/vespaxmlparser/test03.xml47
-rw-r--r--document/src/test/vespaxmlparser/test04.xml28
-rw-r--r--document/src/test/vespaxmlparser/test05.xml28
-rw-r--r--document/src/test/vespaxmlparser/test06.xml77
-rw-r--r--document/src/test/vespaxmlparser/test07.xml72
-rw-r--r--document/src/test/vespaxmlparser/test08.xml23
-rw-r--r--document/src/test/vespaxmlparser/test09.xml22
-rw-r--r--document/src/test/vespaxmlparser/test10.xml94
-rw-r--r--document/src/test/vespaxmlparser/test12.xml43
-rw-r--r--document/src/test/vespaxmlparser/test13.xml37
-rw-r--r--document/src/test/vespaxmlparser/testXMLfile.xml29
-rw-r--r--document/src/test/vespaxmlparser/test_docindoc.xml28
-rw-r--r--document/src/test/vespaxmlparser/test_position.xml15
-rw-r--r--document/src/test/vespaxmlparser/test_uri.xml14
-rw-r--r--document/src/test/vespaxmlparser/test_url.xml20
-rw-r--r--document/src/test/vespaxmlparser/testalltypes.xml136
-rw-r--r--document/src/test/vespaxmlparser/testandset.xml22
-rw-r--r--document/src/test/vespaxmlparser/testmapnokey.xml23
-rw-r--r--document/src/test/vespaxmlparser/testmapnovalue.xml19
24 files changed, 1269 insertions, 0 deletions
diff --git a/document/src/test/vespaxmlparser/alltypes.cfg b/document/src/test/vespaxmlparser/alltypes.cfg
new file mode 100644
index 00000000000..5d89611d24b
--- /dev/null
+++ b/document/src/test/vespaxmlparser/alltypes.cfg
@@ -0,0 +1,101 @@
+datatype[5]
+datatype[0].id -240642363
+datatype[0].arraytype[0]
+datatype[0].weightedsettype[0]
+datatype[0].structtype[1]
+datatype[0].structtype[0].name alltypes.header
+datatype[0].structtype[0].version 0
+datatype[0].structtype[0].field[0]
+datatype[0].documenttype[0]
+datatype[1].id 1000002
+datatype[1].arraytype[1]
+datatype[1].arraytype[0].datatype 2
+datatype[1].weightedsettype[0]
+datatype[1].structtype[0]
+datatype[1].documenttype[0]
+datatype[2].id 2000001
+datatype[2].arraytype[0]
+datatype[2].weightedsettype[1]
+datatype[2].weightedsettype[0].datatype 2
+datatype[2].weightedsettype[0].createifnonexistant false
+datatype[2].weightedsettype[0].removeifzero false
+datatype[2].structtype[0]
+datatype[2].documenttype[0]
+datatype[3].id 163574298
+datatype[3].arraytype[0]
+datatype[3].weightedsettype[0]
+datatype[3].structtype[1]
+datatype[3].structtype[0].name alltypes.body
+datatype[3].structtype[0].version 0
+datatype[3].structtype[0].field[20]
+datatype[3].structtype[0].field[0].name stringval
+datatype[3].structtype[0].field[0].id[0]
+datatype[3].structtype[0].field[0].datatype 2
+datatype[3].structtype[0].field[1].name intval1
+datatype[3].structtype[0].field[1].id[0]
+datatype[3].structtype[0].field[1].datatype 0
+datatype[3].structtype[0].field[2].name intval2
+datatype[3].structtype[0].field[2].id[0]
+datatype[3].structtype[0].field[2].datatype 0
+datatype[3].structtype[0].field[3].name intval3
+datatype[3].structtype[0].field[3].id[0]
+datatype[3].structtype[0].field[3].datatype 0
+datatype[3].structtype[0].field[4].name longval1
+datatype[3].structtype[0].field[4].id[0]
+datatype[3].structtype[0].field[4].datatype 4
+datatype[3].structtype[0].field[5].name longval2
+datatype[3].structtype[0].field[5].id[0]
+datatype[3].structtype[0].field[5].datatype 4
+datatype[3].structtype[0].field[6].name longval3
+datatype[3].structtype[0].field[6].id[0]
+datatype[3].structtype[0].field[6].datatype 4
+datatype[3].structtype[0].field[7].name byteval1
+datatype[3].structtype[0].field[7].id[0]
+datatype[3].structtype[0].field[7].datatype 16
+datatype[3].structtype[0].field[8].name byteval2
+datatype[3].structtype[0].field[8].id[0]
+datatype[3].structtype[0].field[8].datatype 16
+datatype[3].structtype[0].field[9].name byteval3
+datatype[3].structtype[0].field[9].id[0]
+datatype[3].structtype[0].field[9].datatype 16
+datatype[3].structtype[0].field[10].name floatval
+datatype[3].structtype[0].field[10].id[0]
+datatype[3].structtype[0].field[10].datatype 1
+datatype[3].structtype[0].field[11].name doubleval
+datatype[3].structtype[0].field[11].id[0]
+datatype[3].structtype[0].field[11].datatype 5
+datatype[3].structtype[0].field[12].name rawval1
+datatype[3].structtype[0].field[12].id[0]
+datatype[3].structtype[0].field[12].datatype 3
+datatype[3].structtype[0].field[13].name rawval2
+datatype[3].structtype[0].field[13].id[0]
+datatype[3].structtype[0].field[13].datatype 3
+datatype[3].structtype[0].field[14].name urival
+datatype[3].structtype[0].field[14].id[0]
+datatype[3].structtype[0].field[14].datatype 10
+datatype[3].structtype[0].field[15].name contentval1
+datatype[3].structtype[0].field[15].id[0]
+datatype[3].structtype[0].field[15].datatype 12
+datatype[3].structtype[0].field[16].name contentval2
+datatype[3].structtype[0].field[16].id[0]
+datatype[3].structtype[0].field[16].datatype 12
+datatype[3].structtype[0].field[17].name arrayofstringval
+datatype[3].structtype[0].field[17].id[0]
+datatype[3].structtype[0].field[17].datatype 1000002
+datatype[3].structtype[0].field[18].name weightedsetofstringval
+datatype[3].structtype[0].field[18].id[0]
+datatype[3].structtype[0].field[18].datatype 2000001
+datatype[3].structtype[0].field[19].name tagval
+datatype[3].structtype[0].field[19].id[0]
+datatype[3].structtype[0].field[19].datatype 18
+datatype[3].documenttype[0]
+datatype[4].id -1126644934
+datatype[4].arraytype[0]
+datatype[4].weightedsettype[0]
+datatype[4].structtype[0]
+datatype[4].documenttype[1]
+datatype[4].documenttype[0].name alltypes
+datatype[4].documenttype[0].version 0
+datatype[4].documenttype[0].inherits[0]
+datatype[4].documenttype[0].headerstruct -240642363
+datatype[4].documenttype[0].bodystruct 163574298
diff --git a/document/src/test/vespaxmlparser/documentmanager.cfg b/document/src/test/vespaxmlparser/documentmanager.cfg
new file mode 100644
index 00000000000..6662f5caab5
--- /dev/null
+++ b/document/src/test/vespaxmlparser/documentmanager.cfg
@@ -0,0 +1,109 @@
+datatype[10]
+datatype[0].id 1002
+datatype[0].arraytype[1]
+datatype[0].arraytype[0].datatype 2
+datatype[0].weightedsettype[0]
+datatype[0].structtype[0]
+datatype[0].documenttype[0]
+datatype[1].id 1000
+datatype[1].arraytype[1]
+datatype[1].arraytype[0].datatype 0
+datatype[1].weightedsettype[0]
+datatype[1].structtype[0]
+datatype[1].documenttype[0]
+datatype[2].id 1004
+datatype[2].arraytype[1]
+datatype[2].arraytype[0].datatype 4
+datatype[2].weightedsettype[0]
+datatype[2].structtype[0]
+datatype[2].documenttype[0]
+datatype[3].id 1016
+datatype[3].arraytype[1]
+datatype[3].arraytype[0].datatype 16
+datatype[3].weightedsettype[0]
+datatype[3].structtype[0]
+datatype[3].documenttype[0]
+datatype[4].id 1001
+datatype[4].arraytype[1]
+datatype[4].arraytype[0].datatype 1
+datatype[4].weightedsettype[0]
+datatype[4].structtype[0]
+datatype[4].documenttype[0]
+datatype[5].id 2001
+datatype[5].arraytype[0]
+datatype[5].weightedsettype[1]
+datatype[5].weightedsettype[0].datatype 0
+datatype[5].weightedsettype[0].createifnonexistant false
+datatype[5].weightedsettype[0].removeifzero false
+datatype[5].structtype[0]
+datatype[5].documenttype[0]
+datatype[6].id 2002
+datatype[6].arraytype[0]
+datatype[6].weightedsettype[1]
+datatype[6].weightedsettype[0].datatype 2
+datatype[6].weightedsettype[0].createifnonexistant false
+datatype[6].weightedsettype[0].removeifzero false
+datatype[6].structtype[0]
+datatype[6].documenttype[0]
+datatype[7].id -628990518
+datatype[7].arraytype[0]
+datatype[7].weightedsettype[0]
+datatype[7].structtype[1]
+datatype[7].structtype[0].name news.header
+datatype[7].structtype[0].version 0
+datatype[7].structtype[0].field[12]
+datatype[7].structtype[0].field[0].name url
+datatype[7].structtype[0].field[0].id[0]
+datatype[7].structtype[0].field[0].datatype 10
+datatype[7].structtype[0].field[1].name title
+datatype[7].structtype[0].field[1].id[0]
+datatype[7].structtype[0].field[1].datatype 2
+datatype[7].structtype[0].field[2].name last_downloaded
+datatype[7].structtype[0].field[2].id[0]
+datatype[7].structtype[0].field[2].datatype 0
+datatype[7].structtype[0].field[3].name value_long
+datatype[7].structtype[0].field[3].id[0]
+datatype[7].structtype[0].field[3].datatype 4
+datatype[7].structtype[0].field[4].name value_content
+datatype[7].structtype[0].field[4].id[0]
+datatype[7].structtype[0].field[4].datatype 12
+datatype[7].structtype[0].field[5].name stringarr
+datatype[7].structtype[0].field[5].id[0]
+datatype[7].structtype[0].field[5].datatype 1002
+datatype[7].structtype[0].field[6].name intarr
+datatype[7].structtype[0].field[6].id[0]
+datatype[7].structtype[0].field[6].datatype 1000
+datatype[7].structtype[0].field[7].name longarr
+datatype[7].structtype[0].field[7].id[0]
+datatype[7].structtype[0].field[7].datatype 1004
+datatype[7].structtype[0].field[8].name bytearr
+datatype[7].structtype[0].field[8].id[0]
+datatype[7].structtype[0].field[8].datatype 1016
+datatype[7].structtype[0].field[9].name floatarr
+datatype[7].structtype[0].field[9].id[0]
+datatype[7].structtype[0].field[9].datatype 1001
+datatype[7].structtype[0].field[10].name weightedsetint
+datatype[7].structtype[0].field[10].id[0]
+datatype[7].structtype[0].field[10].datatype 2001
+datatype[7].structtype[0].field[11].name weightedsetstring
+datatype[7].structtype[0].field[11].id[0]
+datatype[7].structtype[0].field[11].datatype 2002
+datatype[7].documenttype[0]
+datatype[8].id 538588767
+datatype[8].arraytype[0]
+datatype[8].weightedsettype[0]
+datatype[8].structtype[1]
+datatype[8].structtype[0].name news.body
+datatype[8].structtype[0].version 0
+datatype[8].structtype[0].field[0]
+datatype[8].documenttype[0]
+datatype[9].id -1048827947
+datatype[9].arraytype[0]
+datatype[9].weightedsettype[0]
+datatype[9].structtype[0]
+datatype[9].documenttype[1]
+datatype[9].documenttype[0].name news
+datatype[9].documenttype[0].version 0
+datatype[9].documenttype[0].inherits[0]
+datatype[9].documenttype[0].headerstruct -628990518
+datatype[9].documenttype[0].bodystruct 538588767
diff --git a/document/src/test/vespaxmlparser/documentmanager2.cfg b/document/src/test/vespaxmlparser/documentmanager2.cfg
new file mode 100644
index 00000000000..578fa740a6c
--- /dev/null
+++ b/document/src/test/vespaxmlparser/documentmanager2.cfg
@@ -0,0 +1,220 @@
+enablecompression false
+datatype[16]
+datatype[0].id -1486737430
+datatype[0].arraytype[1]
+datatype[0].arraytype[0].datatype 2
+datatype[0].maptype[0]
+datatype[0].weightedsettype[0]
+datatype[0].structtype[0]
+datatype[0].annotationreftype[0]
+datatype[0].documenttype[0]
+datatype[1].id -1245117006
+datatype[1].arraytype[1]
+datatype[1].arraytype[0].datatype 0
+datatype[1].maptype[0]
+datatype[1].weightedsettype[0]
+datatype[1].structtype[0]
+datatype[1].annotationreftype[0]
+datatype[1].documenttype[0]
+datatype[2].id 58874399
+datatype[2].arraytype[1]
+datatype[2].arraytype[0].datatype 4
+datatype[2].maptype[0]
+datatype[2].weightedsettype[0]
+datatype[2].structtype[0]
+datatype[2].annotationreftype[0]
+datatype[2].documenttype[0]
+datatype[3].id 49942803
+datatype[3].arraytype[1]
+datatype[3].arraytype[0].datatype 16
+datatype[3].maptype[0]
+datatype[3].weightedsettype[0]
+datatype[3].structtype[0]
+datatype[3].annotationreftype[0]
+datatype[3].documenttype[0]
+datatype[4].id 1650586661
+datatype[4].arraytype[1]
+datatype[4].arraytype[0].datatype 1
+datatype[4].maptype[0]
+datatype[4].weightedsettype[0]
+datatype[4].structtype[0]
+datatype[4].annotationreftype[0]
+datatype[4].documenttype[0]
+datatype[5].id 519906144
+datatype[5].arraytype[0]
+datatype[5].maptype[0]
+datatype[5].weightedsettype[1]
+datatype[5].weightedsettype[0].datatype 0
+datatype[5].weightedsettype[0].createifnonexistant false
+datatype[5].weightedsettype[0].removeifzero false
+datatype[5].structtype[0]
+datatype[5].annotationreftype[0]
+datatype[5].documenttype[0]
+datatype[6].id 1328286588
+datatype[6].arraytype[0]
+datatype[6].maptype[0]
+datatype[6].weightedsettype[1]
+datatype[6].weightedsettype[0].datatype 2
+datatype[6].weightedsettype[0].createifnonexistant false
+datatype[6].weightedsettype[0].removeifzero false
+datatype[6].structtype[0]
+datatype[6].annotationreftype[0]
+datatype[6].documenttype[0]
+datatype[7].id 339965458
+datatype[7].arraytype[0]
+datatype[7].maptype[1]
+datatype[7].maptype[0].keytype 2
+datatype[7].maptype[0].valtype 2
+datatype[7].weightedsettype[0]
+datatype[7].structtype[0]
+datatype[7].annotationreftype[0]
+datatype[7].documenttype[0]
+datatype[8].id -2092985853
+datatype[8].arraytype[0]
+datatype[8].maptype[0]
+datatype[8].weightedsettype[0]
+datatype[8].structtype[1]
+datatype[8].structtype[0].name "mystruct"
+datatype[8].structtype[0].version 0
+datatype[8].structtype[0].field[4]
+datatype[8].structtype[0].field[0].name "bytearr"
+datatype[8].structtype[0].field[0].datatype 49942803
+datatype[8].structtype[0].field[0].id[0]
+datatype[8].structtype[0].field[1].name "mymap"
+datatype[8].structtype[0].field[1].datatype 339965458
+datatype[8].structtype[0].field[1].id[0]
+datatype[8].structtype[0].field[2].name "title"
+datatype[8].structtype[0].field[2].datatype 2
+datatype[8].structtype[0].field[2].id[0]
+datatype[8].structtype[0].field[3].name "structfield"
+datatype[8].structtype[0].field[3].datatype 2
+datatype[8].structtype[0].field[3].id[0]
+datatype[8].structtype[0].inherits[0]
+datatype[8].annotationreftype[0]
+datatype[8].documenttype[0]
+datatype[9].id 1901258752
+datatype[9].arraytype[0]
+datatype[9].maptype[1]
+datatype[9].maptype[0].keytype 0
+datatype[9].maptype[0].valtype -2092985853
+datatype[9].weightedsettype[0]
+datatype[9].structtype[0]
+datatype[9].annotationreftype[0]
+datatype[9].documenttype[0]
+datatype[10].id 759956026
+datatype[10].arraytype[1]
+datatype[10].arraytype[0].datatype -2092985853
+datatype[10].maptype[0]
+datatype[10].weightedsettype[0]
+datatype[10].structtype[0]
+datatype[10].annotationreftype[0]
+datatype[10].documenttype[0]
+datatype[11].id -1220861393
+datatype[11].arraytype[0]
+datatype[11].maptype[1]
+datatype[11].maptype[0].keytype 2
+datatype[11].maptype[0].valtype -1486737430
+datatype[11].weightedsettype[0]
+datatype[11].structtype[0]
+datatype[11].annotationreftype[0]
+datatype[11].documenttype[0]
+datatype[12].id 69621385
+datatype[12].arraytype[1]
+datatype[12].arraytype[0].datatype 339965458
+datatype[12].maptype[0]
+datatype[12].weightedsettype[0]
+datatype[12].structtype[0]
+datatype[12].annotationreftype[0]
+datatype[12].documenttype[0]
+datatype[13].id -628990518
+datatype[13].arraytype[0]
+datatype[13].maptype[0]
+datatype[13].weightedsettype[0]
+datatype[13].structtype[1]
+datatype[13].structtype[0].name "news.header"
+datatype[13].structtype[0].version 0
+datatype[13].structtype[0].field[19]
+datatype[13].structtype[0].field[0].name "url"
+datatype[13].structtype[0].field[0].datatype 10
+datatype[13].structtype[0].field[0].id[0]
+datatype[13].structtype[0].field[1].name "title"
+datatype[13].structtype[0].field[1].datatype 2
+datatype[13].structtype[0].field[1].id[0]
+datatype[13].structtype[0].field[2].name "last_downloaded"
+datatype[13].structtype[0].field[2].datatype 0
+datatype[13].structtype[0].field[2].id[0]
+datatype[13].structtype[0].field[3].name "value_long"
+datatype[13].structtype[0].field[3].datatype 4
+datatype[13].structtype[0].field[3].id[0]
+datatype[13].structtype[0].field[4].name "value_content"
+datatype[13].structtype[0].field[4].datatype 2
+datatype[13].structtype[0].field[4].id[0]
+datatype[13].structtype[0].field[5].name "value_raw"
+datatype[13].structtype[0].field[5].datatype 3
+datatype[13].structtype[0].field[5].id[0]
+datatype[13].structtype[0].field[6].name "stringarr"
+datatype[13].structtype[0].field[6].datatype -1486737430
+datatype[13].structtype[0].field[6].id[0]
+datatype[13].structtype[0].field[7].name "intarr"
+datatype[13].structtype[0].field[7].datatype -1245117006
+datatype[13].structtype[0].field[7].id[0]
+datatype[13].structtype[0].field[8].name "longarr"
+datatype[13].structtype[0].field[8].datatype 58874399
+datatype[13].structtype[0].field[8].id[0]
+datatype[13].structtype[0].field[9].name "bytearr"
+datatype[13].structtype[0].field[9].datatype 49942803
+datatype[13].structtype[0].field[9].id[0]
+datatype[13].structtype[0].field[10].name "floatarr"
+datatype[13].structtype[0].field[10].datatype 1650586661
+datatype[13].structtype[0].field[10].id[0]
+datatype[13].structtype[0].field[11].name "weightedsetint"
+datatype[13].structtype[0].field[11].datatype 519906144
+datatype[13].structtype[0].field[11].id[0]
+datatype[13].structtype[0].field[12].name "weightedsetstring"
+datatype[13].structtype[0].field[12].datatype 1328286588
+datatype[13].structtype[0].field[12].id[0]
+datatype[13].structtype[0].field[13].name "stringmap"
+datatype[13].structtype[0].field[13].datatype 339965458
+datatype[13].structtype[0].field[13].id[0]
+datatype[13].structtype[0].field[14].name "structfield"
+datatype[13].structtype[0].field[14].datatype -2092985853
+datatype[13].structtype[0].field[14].id[0]
+datatype[13].structtype[0].field[15].name "structmap"
+datatype[13].structtype[0].field[15].datatype 1901258752
+datatype[13].structtype[0].field[15].id[0]
+datatype[13].structtype[0].field[16].name "structarr"
+datatype[13].structtype[0].field[16].datatype 759956026
+datatype[13].structtype[0].field[16].id[0]
+datatype[13].structtype[0].field[17].name "arrmap"
+datatype[13].structtype[0].field[17].datatype -1220861393
+datatype[13].structtype[0].field[17].id[0]
+datatype[13].structtype[0].field[18].name "maparr"
+datatype[13].structtype[0].field[18].datatype 69621385
+datatype[13].structtype[0].field[18].id[0]
+datatype[13].structtype[0].inherits[0]
+datatype[13].annotationreftype[0]
+datatype[13].documenttype[0]
+datatype[14].id 538588767
+datatype[14].arraytype[0]
+datatype[14].maptype[0]
+datatype[14].weightedsettype[0]
+datatype[14].structtype[1]
+datatype[14].structtype[0].name "news.body"
+datatype[14].structtype[0].version 0
+datatype[14].structtype[0].field[0]
+datatype[14].structtype[0].inherits[0]
+datatype[14].annotationreftype[0]
+datatype[14].documenttype[0]
+datatype[15].id -1048827947
+datatype[15].arraytype[0]
+datatype[15].maptype[0]
+datatype[15].weightedsettype[0]
+datatype[15].structtype[0]
+datatype[15].annotationreftype[0]
+datatype[15].documenttype[1]
+datatype[15].documenttype[0].name "news"
+datatype[15].documenttype[0].version 0
+datatype[15].documenttype[0].headerstruct -628990518
+datatype[15].documenttype[0].bodystruct 538588767
+datatype[15].documenttype[0].inherits[0]
+annotationtype[0]
diff --git a/document/src/test/vespaxmlparser/test01.xml b/document/src/test/vespaxmlparser/test01.xml
new file mode 100644
index 00000000000..88bbf434533
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test01.xml
@@ -0,0 +1,45 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+ a new document, adding all possible fields available to this documenttype
+-->
+
+<vespafeed>
+
+ <document documenttype="news" documentid="doc:news:http://news1">
+ <url>testUrl</url>
+ <title>testTitle</title>
+ <last_downloaded>1</last_downloaded>
+ <value_long>2</value_long>
+ <value_content>testValueContent</value_content>
+ <stringarr>
+ <item>stringarrItem1</item>
+ <item>stringarrItem2</item>
+ </stringarr>
+ <intarr>
+ <item>3</item>
+ <item>4</item>
+ </intarr>
+ <longarr>
+ <item>5</item>
+ <item>6</item>
+ </longarr>
+ <bytearr>
+ <item>7</item>
+ <item>8</item>
+ </bytearr>
+ <floatarr>
+ <item>9</item>
+ <item>10</item>
+ </floatarr>
+ <weightedsetint>
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </weightedsetint>
+ <weightedsetstring>
+ <item weight="13">string13</item>
+ <item weight="14">string14</item>
+ </weightedsetstring>
+ </document>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test02.xml b/document/src/test/vespaxmlparser/test02.xml
new file mode 100644
index 00000000000..d230733b276
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test02.xml
@@ -0,0 +1,17 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+ smaller document adding just a few fields
+-->
+
+<vespafeed>
+ <document documenttype="news" documentid="doc:news:http://news2">
+ <url>testUrl2</url>
+ <title>testTitle2</title>
+ <weightedsetint>
+ <item weight="21">21</item>
+ <item weight="22">22</item>
+ </weightedsetint>
+ </document>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test03.xml b/document/src/test/vespaxmlparser/test03.xml
new file mode 100644
index 00000000000..84da06cc9ae
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test03.xml
@@ -0,0 +1,47 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+
+ A document update including:
+
+ - different variants of assign
+ - all fields in this documenttype are assigned new values
+-->
+
+<vespafeed>
+ <update documenttype="news" documentid="doc:news:http://news3">
+ <assign field="url">assignUrl</assign>
+ <assign field="title">assignTitle</assign>
+ <assign field="last_downloaded">1</assign>
+ <assign field="value_long">2</assign>
+ <assign field="value_content">assignContent</assign>
+ <assign field="stringarr">
+ <item>assignString1</item>
+ <item>assignString2</item>
+ </assign>
+ <assign field="intarr">
+ <item>3</item>
+ <item>4</item>
+ </assign>
+ <assign field="longarr">
+ <item>5</item>
+ <item>6</item>
+ </assign>
+ <assign field="bytearr">
+ <item>7</item>
+ <item>8</item>
+ </assign>
+ <assign field="floatarr">
+ <item>9</item>
+ <item>10</item>
+ </assign>
+ <assign field="weightedsetint">
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </assign>
+ <assign field="weightedsetstring">
+ <item weight="13">assign13</item>
+ <item weight="14">assign14</item>
+ </assign>
+ </update>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test04.xml b/document/src/test/vespaxmlparser/test04.xml
new file mode 100644
index 00000000000..0b1b76c1fc8
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test04.xml
@@ -0,0 +1,28 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+
+ A document update including:
+
+ - different variants of assign
+ - Only a few fieldupdates (implies rest is not set/null)
+-->
+
+<vespafeed>
+ <update documenttype="news" documentid="doc:news:http://news4">
+ <assign field="url">assignUrl</assign>
+ <assign field="value_long">2</assign>
+ <assign field="stringarr">
+ <item>assignString1</item>
+ <item>assignString2</item>
+ </assign>
+ <assign field="intarr">
+ <item>3</item>
+ <item>4</item>
+ </assign>
+ <assign field="weightedsetint">
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </assign>
+ </update>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test05.xml b/document/src/test/vespaxmlparser/test05.xml
new file mode 100644
index 00000000000..5467a6999b8
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test05.xml
@@ -0,0 +1,28 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+
+ A document update including:
+
+ - Only multivalue fields are supported by "add"
+ - on "weightedsetstring", no given weight implies weight = 1
+-->
+
+<vespafeed>
+ <update documenttype="news" documentid="doc:news:http://news5">
+ <add field="stringarr">
+ <item>addString1</item>
+ <item>addString2</item>
+ </add>
+ <add field="longarr">
+ <item>5</item>
+ </add>
+ <add field="weightedsetint">
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </add>
+ <add field="weightedsetstring">
+ <item>add13</item>
+ </add>
+ </update>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test06.xml b/document/src/test/vespaxmlparser/test06.xml
new file mode 100644
index 00000000000..d2670b24663
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test06.xml
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+
+<!--
+ Document : testXML06.xml
+ Created on : July 26, 2007, 11:18 AM
+ Author : alimf
+ Description:
+ Several Documents that will fail/be skipped, except the last one.
+-->
+
+<vespafeed>
+
+ <document documenttype="news" documentid="doc:news:http://news6a">
+ <value_long>txt</value_long>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6b">
+ <stringarr>
+ <item>stringarrItem1</item>
+ <item></item>
+ </stringarr>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6c">
+ <intarr>
+ <item>1</item>
+ <item>txt</item>
+ </intarr>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6d">
+ <longarr>
+ <item>1</item>
+ <item> </item>
+ </longarr>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6e">
+ <bytearr>
+ <item>1</item>
+ <item>128</item>
+ </bytearr>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6f">
+ <floatarr>
+ <item>1.0</item>
+ <item>two</item>
+ </floatarr>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6g">
+ <weightedsetint>
+ <item>1</item>
+ <item weight="12">txt</item>
+ </weightedsetint>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6h">
+ <weightedsetint>
+ <item weight="1">2</item>
+ <item weight="three">4</item>
+ </weightedsetint>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6i">
+ <weightedsetstring>
+ <item weight="txt">aString</item>
+ </weightedsetstring>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news6j">
+ <title>myTitle</title>
+ </document>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test07.xml b/document/src/test/vespaxmlparser/test07.xml
new file mode 100644
index 00000000000..9d67646798a
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test07.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ - Different numeric operations
+
+ - different variants of assign
+ - some fields in this documenttype are assigned invalid values
+-->
+<vespafeed>
+ <update documenttype="news" documentid="doc:news:http://news7a">
+ <alter field="last_downloaded">
+ <increment by="2" />
+ <decrement by="3" />
+ <multiply by="4" />
+ <divide by="5" />
+ </alter>
+
+ <increment field="weightedsetint" by="6">
+ <key>7</key>
+ </increment>
+
+ <decrement field="weightedsetint" by="8">
+ <key>9</key>
+ </decrement>
+
+ <multiply field="intarr" by="10">
+ <key>11</key>
+ </multiply>
+
+ <multiply field="floatarr" by="12">
+ <key>13</key>
+ </multiply>
+
+ <divide field="floatarr" by="14">
+ <key>15</key>
+ </divide>
+ </update>
+
+ <update documenttype="news" documentid="doc:news:http://news7b">
+ <alter field="title">
+ <increment by="2" />
+ <decrement by="3" />
+ <multiply by="4" />
+ <divide by="5" />
+ </alter>
+ </update>
+
+ <update documenttype="news" documentid="doc:news:http://news7c">
+ <increment field="weightedsetint" by="five">
+ <key>1</key>
+ </increment>
+ </update>
+
+ <update documenttype="news" documentid="doc:news:http://news7d">
+ <decrement field="weightedsetint" by="2">
+ <key></key>
+ </decrement>
+ </update>
+
+ <update documenttype="news" documentid="doc:news:http://news7e">
+ <multiply field="floatarr">
+ <key>3</key>
+ </multiply>
+ </update>
+
+ <update documenttype="news" documentid="doc:news:http://news7f">
+ <divide field="floatarr" by="3">
+ <key>four</key>
+ </divide>
+ </update>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test08.xml b/document/src/test/vespaxmlparser/test08.xml
new file mode 100644
index 00000000000..e9dd3d31940
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test08.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+
+ - Different types of remove
+ - All are valid
+
+-->
+
+<vespafeed>
+ <update documenttype="news" documentid="doc:news:http://news8a">
+ <remove field="stringarr">
+ <item>removeString1</item>
+ <item>removeString2</item>
+ </remove>
+ <remove field="weightedsetint">
+ <item>4</item>
+ <item>5</item>
+ </remove>
+ </update>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test09.xml b/document/src/test/vespaxmlparser/test09.xml
new file mode 100644
index 00000000000..1d82f865f73
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test09.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+
+ - Different types of remove document
+ - All are valid
+
+-->
+
+<vespafeed>
+ <remove documentid="doc:news:http://news9a" />
+
+ <remove documentid="doc:news:http://news9b">
+ </remove>
+
+ <remove>
+ <uri>doc:news:http://news9c</uri>
+ </remove>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test10.xml b/document/src/test/vespaxmlparser/test10.xml
new file mode 100644
index 00000000000..855ff4b20e9
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test10.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+
+<!--
+ Document : test10.xml
+ Created on : July 27, 2007, 11:37 AM
+ Author : alimf
+ Description:
+ this feed contains both documents, updates and removes.
+-->
+
+<vespafeed>
+
+ <document documenttype="news" documentid="doc:news:http://news10a">
+ <url>testUrl</url>
+ <title>testTitle</title>
+ <last_downloaded>1</last_downloaded>
+ <value_long>2</value_long>
+ <value_content>testValueContent</value_content>
+ <stringarr>
+ <item>stringarrItem1</item>
+ <item>stringarrItem2</item>
+ </stringarr>
+ <intarr>
+ <item>3</item>
+ <item>4</item>
+ </intarr>
+ <longarr>
+ <item>5</item>
+ <item>6</item>
+ </longarr>
+ <bytearr>
+ <item>7</item>
+ <item>8</item>
+ </bytearr>
+ <floatarr>
+ <item>9</item>
+ <item>10</item>
+ </floatarr>
+ <weightedsetint>
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </weightedsetint>
+ <weightedsetstring>
+ <item weight="13">string13</item>
+ <item weight="14">string14</item>
+ </weightedsetstring>
+ </document>
+
+ <document documenttype="news" documentid="doc:news:http://news10b">
+ <url>testUrl2</url>
+ </document>
+
+ <update documenttype="news" documentid="doc:news:http://news10c">
+ <add field="stringarr">
+ <item>addString1</item>
+ <item>addString2</item>
+ </add>
+ <add field="longarr">
+ <item>5</item>
+ </add>
+ <add field="weightedsetint">
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </add>
+ <add field="weightedsetstring">
+ <item>add13</item>
+ </add>
+ </update>
+
+ <update documenttype="news" documentid="doc:news:http://news10d">
+ <assign field="url">assignUrl</assign>
+ <assign field="value_long">2</assign>
+ <assign field="stringarr">
+ <item>assignString1</item>
+ <item>assignString2</item>
+ </assign>
+ <assign field="intarr">
+ <item>3</item>
+ <item>4</item>
+ </assign>
+ <assign field="weightedsetint">
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </assign>
+ </update>
+
+ <remove documentid="doc:news:http://news10e"/>
+
+ <remove>
+ <uri>doc:news:http://news10f</uri>
+ </remove>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test12.xml b/document/src/test/vespaxmlparser/test12.xml
new file mode 100644
index 00000000000..349283dd499
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test12.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<vespafeed>
+
+ <!--warning document: -->
+ <vespaadd>
+ <document documenttype="news" documentid="34sdfasva4">
+ <value_long>testUrlA</value_long>
+ </document>
+ </vespaadd>
+
+ <!-- bad document: -->
+ <document documenttype="news" documentid="doc:news:http://news12b">
+ <value_long>testUrlB</value_long>
+ </document>
+
+ <!-- OK document -->
+ <document documenttype="news" documentid="doc:news:http://news12c">
+ <url>testUrl</url>
+ <title>testTitle</title>
+ </document>
+
+ <!-- bad document: -->
+ <document documenttype="news" documentid="doc:news:http://news12d">
+ <value_long>testUrlC</value_long>
+ </documen>
+
+ <!-- OK document -->
+ <document documenttype="news" documentid="doc:news:http://news12e">
+ <url>testUrl</url>
+ <title>testTitle</title>
+ </document>
+
+ <!-- bad document: -->
+ <document documenttype="news" documentid="doc:news:http://news12f">
+ <value_long>testUrlD</value_long>
+ </document>
+
+ <!--warning document: -->
+ <document documenttype="news" documentid="98svh98sdfh">
+ <value_long>testUrlD</value_long>
+ </document>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test13.xml b/document/src/test/vespaxmlparser/test13.xml
new file mode 100644
index 00000000000..9d5bc88a195
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test13.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<vespafeed>
+ <document documenttype="alltypes" documentid="doc:foobar:http://all.types">
+ <stringval>Banana</stringval>
+ <intval1>2146983647</intval1>
+ <intval2>4294967291</intval2>
+ <intval3>-5</intval3>
+ <longval1>9223372036354454243</longval1>
+ <longval2>18446744073709551029</longval2>
+ <longval3>-587</longval3>
+ <byteval1>126</byteval1>
+ <byteval2>135</byteval2>
+ <byteval3>-121</byteval3>
+ <floatval>4.73</floatval>
+ <doubleval>-9.11</doubleval>
+ <rawval1>ABCDEFGHIJKL</rawval1>
+ <rawval2 binaryencoding="baSe64">RG9uYWxkRHVjawo=</rawval2>
+ <urival>http://www.vespa.vespa/boo/baa#frag</urival>
+ <contentval1 contenttype="text/plain" encoding="utf-8" language="no">This is a test</contentval1>
+ <contentval2 contenttype="text/plain" encoding="utf-8" language="no" binaryencoding="baSE64">VGhpcyBpcyBhIHRlc3QK</contentval2>
+ <arrayofstringval>
+ <item>Boobaa</item>
+ <item>Bibiii</item>
+ </arrayofstringval>
+ <weightedsetofstringval>
+ <item weight="5">Baahabhh</item>
+ <item weight="10">bkasj</item>
+ <item>asdkfjas</item>
+ </weightedsetofstringval>
+ <tagval>
+ <item weight="5">Baahabhh</item>
+ <item weight="10">bkasj</item>
+ <item>asdkfjas</item>
+ </tagval>
+ </document>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/testXMLfile.xml b/document/src/test/vespaxmlparser/testXMLfile.xml
new file mode 100644
index 00000000000..59c83698951
--- /dev/null
+++ b/document/src/test/vespaxmlparser/testXMLfile.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<vespafeed>
+ <document documenttype="music" documentid="doc:music:http://music.yahoo.com/bobdylan/BestOf">
+ <url>http://music.yahoo.com/bobdylan/BestOf</url>
+ <songs>Knockin on Heaven's Door; Mr. Tambourine Man</songs>
+ <title>Best of Bob Dylan</title>
+ <tracks>
+ <item>Mr. Tambourine Man</item>
+ <item>Someday Baby</item>
+ <item>Blowin' In The Wind</item>
+ </tracks>
+ <popularity>
+ <item weight="3">0</item>
+ <item weight="5">1</item>
+ <item weight="30">2</item>
+ <item weight="26">3</item>
+ </popularity>
+ </document>
+
+ <remove documentid="doc:music:http://music.yahoo.com/BritneySpears/HitMe"/>
+
+ <update documenttype="music" documentid="doc:music:http://music.yahoo.com/bobdylan/BestOf">
+ <assign field="title">The Best of Bob Dylan</assign>
+ <add field="tracks">
+ <item>Man Of Constant Sorrow</item>
+ </add>
+ </update>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test_docindoc.xml b/document/src/test/vespaxmlparser/test_docindoc.xml
new file mode 100644
index 00000000000..3de94107d8e
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test_docindoc.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<vespafeed>
+
+ <document type="outerdoc" id="doc:outer:this:is:outer:doc">
+ <innerdocuments>
+ <item>
+ <document type="docindoc" id="doc:inner:this:is:inner:doc:a">
+ <name>Peter Sellers</name>
+ <content>Comedian</content>
+ </document>
+ </item>
+ <item>
+ <document type="docindoc" id="doc:inner:this:is:inner:doc:b">
+ <name>Ole Olsen</name>
+ <content>Common man</content>
+ </document>
+ </item>
+ <item>
+ <document type="docindoc" id="doc:inner:this:is:inner:doc:c">
+ <name>Stein Nilsen</name>
+ <content>Worker</content>
+ </document>
+ </item>
+ </innerdocuments>
+ </document>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test_position.xml b/document/src/test/vespaxmlparser/test_position.xml
new file mode 100644
index 00000000000..d03bc27480f
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test_position.xml
@@ -0,0 +1,15 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<vespafeed>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_pos><x>1</x><y>2</y></my_pos>
+ </document>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_pos>E3;N4</my_pos>
+ </document>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_pos>5;6</my_pos>
+ </document>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_pos binaryencoding="base64">Nzs4</my_pos>
+ </document>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test_uri.xml b/document/src/test/vespaxmlparser/test_uri.xml
new file mode 100644
index 00000000000..c261e5e3e31
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test_uri.xml
@@ -0,0 +1,14 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<vespafeed>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_uri>scheme://host</my_uri>
+ </document>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_arr><item>scheme://host</item></my_arr>
+ </document>
+ <update documenttype="my_doc" documentid="doc:scheme:">
+ <add field="my_arr">
+ <item>scheme://host</item>
+ </add>
+ </update>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/test_url.xml b/document/src/test/vespaxmlparser/test_url.xml
new file mode 100644
index 00000000000..0710ce0d0f3
--- /dev/null
+++ b/document/src/test/vespaxmlparser/test_url.xml
@@ -0,0 +1,20 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<vespafeed>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_url>
+ <all>scheme://user@host:99/path?query#fragment</all>
+ <scheme>scheme</scheme>
+ <host>host</host>
+ <port>99</port>
+ <path>/path</path>
+ <query>query</query>
+ <fragment>fragment</fragment>
+ </my_url>
+ </document>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_url>scheme://user@host:99/path?query#fragment</my_url>
+ </document>
+ <document documenttype="my_doc" documentid="doc:scheme:">
+ <my_url binaryencoding="base64">c2NoZW1lOi8vdXNlckBob3N0Ojk5L3BhdGg/cXVlcnkjZnJhZ21lbnQ=</my_url>
+ </document>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/testalltypes.xml b/document/src/test/vespaxmlparser/testalltypes.xml
new file mode 100644
index 00000000000..d05cec70b11
--- /dev/null
+++ b/document/src/test/vespaxmlparser/testalltypes.xml
@@ -0,0 +1,136 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+ a new document, adding all possible fields available to this documenttype
+-->
+
+<vespafeed>
+
+ <document documenttype="news" documentid="doc:news:http://news1">
+ <url>testUrl</url>
+ <title>testTitle</title>
+ <last_downloaded>1</last_downloaded>
+ <value_long>2</value_long>
+
+ <value_raw binaryencoding="base64">Zm9vYmFy</value_raw>
+ <value_content>dGVzdFZhbHVlQ29udGVudA==</value_content>
+
+ <stringarr>
+ <item>stringarrItem1</item>
+ <item>stringarrItem2</item>
+ </stringarr>
+ <intarr>
+ <item>2983742937</item>
+ <item>2983742938</item>
+ <item>4294967295</item>
+ <item>-2147483648</item>
+ </intarr>
+ <longarr>
+ <item>5</item>
+ <item>6</item>
+ </longarr>
+ <bytearr>
+ <item>7</item>
+ <item>8</item>
+ </bytearr>
+ <floatarr>
+ <item>9</item>
+ <item>10</item>
+ </floatarr>
+ <weightedsetint>
+ <item weight="11">11</item>
+ <item weight="12">12</item>
+ </weightedsetint>
+ <weightedsetstring>
+ <item weight="13">string13</item>
+ <item weight="14">string14</item>
+ </weightedsetstring>
+
+ <stringmap>
+ <item><key>italia</key><value>slovakia</value></item>
+ <item><key>danmark</key><value>japan</value></item>
+ <item><key>paraguay</key><value>new zealand</value></item>
+ </stringmap>
+
+ <structfield>
+ <title>star wars</title>
+ <structfield>dummy</structfield>
+ </structfield>
+
+ <structarr>
+ <item>
+ <title>title1</title>
+ <mymap>
+ <item><key>key1</key><value>value1</value></item>
+ <item><key>key2</key><value>value2</value></item>
+ </mymap>
+ </item>
+ <item>
+ <title>title2</title>
+ <mymap>
+ <item><key>key1.1</key><value>value1.1</value></item>
+ <item><key>key1.2</key><value>value1.2</value></item>
+ </mymap>
+ </item>
+ </structarr>
+
+ <structmap>
+ <item>
+ <key>32</key>
+ <value>
+ <title>title1</title>
+ <mymap>
+ <item><key>key1</key><value>value1</value></item>
+ <item><key>key2</key><value>value2</value></item>
+ </mymap>
+ </value>
+ </item>
+ <item>
+ <key>28</key>
+ <value>
+ <title>title2</title>
+ <mymap>
+ <item><key>key3</key><value>value3</value></item>
+ <item><key>key4</key><value>value4</value></item>
+ </mymap>
+ </value>
+ </item>
+ </structmap>
+
+ <arrmap>
+ <item>
+ <key>foo</key>
+ <value>
+ <item>hei1</item>
+ <item>hei2</item>
+ <item>hei3</item>
+ </value>
+ </item>
+ <item>
+ <key>bar</key>
+ <value>
+ <item>hei4</item>
+ <item>hei5</item>
+ <item>hei6</item>
+ </value>
+ </item>
+ </arrmap>
+
+ <maparr>
+ <item>
+ <item><key>key1</key><value>value1</value></item>
+ <item><key>key2</key><value>value2</value></item>
+ </item>
+ <item>
+ <item><key>key3</key><value>value3</value></item>
+ <item><key>key4</key><value>value4</value></item>
+ </item>
+ <item>
+ <item><key>key5</key><value>value5</value></item>
+ <item><key>key6</key><value>value6</value></item>
+ </item>
+ </maparr>
+
+ </document>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/testandset.xml b/document/src/test/vespaxmlparser/testandset.xml
new file mode 100644
index 00000000000..10b2e45cc46
--- /dev/null
+++ b/document/src/test/vespaxmlparser/testandset.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+
+<!--
+ Document : testandset.xml
+ Created on : October 16, 2015
+ Author : Vegard Sjonfjell
+ Description:
+ This feed contains documents, updates and removes with a test and set condition set
+-->
+
+<vespafeed>
+ <document documenttype="news" documentid="id:news:news::test1" condition="news.value_long == 1">
+ <value_long>2</value_long>
+ </document>
+
+ <update documenttype="news" documentid="id:news:news::test2" condition="news.value_long == 1">
+ <assign field="value_long">2</assign>
+ </update>
+
+ <remove documentid="id:news:news::test3" condition="news.value_long == 1"/>
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/testmapnokey.xml b/document/src/test/vespaxmlparser/testmapnokey.xml
new file mode 100644
index 00000000000..2d0527f5719
--- /dev/null
+++ b/document/src/test/vespaxmlparser/testmapnokey.xml
@@ -0,0 +1,23 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+ a new document, adding all possible fields available to this documenttype
+-->
+
+<vespafeed>
+
+ <document documenttype="news" documentid="doc:news:http://news1">
+
+ <arrmap>
+ <item>
+ <value>
+ <item>hei4</item>
+ <item>hei5</item>
+ <item>hei6</item>
+ </value>
+ </item>
+ </arrmap>
+
+ </document>
+
+</vespafeed>
diff --git a/document/src/test/vespaxmlparser/testmapnovalue.xml b/document/src/test/vespaxmlparser/testmapnovalue.xml
new file mode 100644
index 00000000000..07478c2d46d
--- /dev/null
+++ b/document/src/test/vespaxmlparser/testmapnovalue.xml
@@ -0,0 +1,19 @@
+<!-- Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -->
+<!--
+ NOTE: see documentmanager.cfg for document type during test
+ a new document, adding all possible fields available to this documenttype
+-->
+
+<vespafeed>
+
+ <document documenttype="news" documentid="doc:news:http://news1">
+
+ <arrmap>
+ <item>
+ <key>bar</key>
+ </item>
+ </arrmap>
+
+ </document>
+
+</vespafeed>