<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!-- FIXME: change namespace URI? -->
<cas:metadata xmlns:cas="http://oodt.jpl.nasa.gov/1.0/cas">

  <keyval type="scalar">
    <key>key1</key>
    <val>val1</val>
  </keyval>

  <keyval type="vector">
    <key>key2</key>
    <val>val1</val>
    <val>val2</val>
    <val>val3</val>
  </keyval>

  <keyval type="scalar">
    <key>key3</key>
    <val>val3</val>
  </keyval>

  <keyval type="vector">
    <key>key5</key>
    <val>key5_replaced_val1</val>
    <val>key5_replaced_val2</val>
  </keyval>

  <keyval type="scalar">
    <key>key6</key>
    <val>key6_replaced_val1</val>
  </keyval>

</cas:metadata>
