Scratch Pad

From OPeNDAP Documentation
Revision as of 22:08, 4 February 2009 by Ndp (talk | contribs) (→‎RDF Result)
⧼opendap2-jumptonavigation⧽

On this page we look at transforming the OtherXML dap:Attribute type to RDF.

SourceXML

   <Attribute name="xmlTest" type="OtherXML" relationship="is-a">
       <t:level0 xmlns:t="http://namespace.t" t:foo1="namespacedattribute" foo2="nonamespaceAttribute">
           <t:level1>simpleContent</t:level1>
           <t:level1>
               <t:level2>
                   <t:level3>simpleContent</t:level3>
               </t:level2>
           </t:level1>
           TextContent of Complex Type
       </t:level0>
   </Attribute>

RDF

<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:dap="http://xml.opendap.org/ns/DAP/3.3#"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:cf="http://iridl.ldeo.columbia.edu/ontologies/cf-att.owl#"
        xmlns:dapObj="http://iridl.ldeo.columbia.edu/ontologies/opendap.owl#"
        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns:owl="http://www.w3.org/2002/07/owl#"
        xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
        xml:base="http://localhost:8080/opendap/coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc.ddx">
  <owl:Ontology rdf:about="http://localhost:8080/opendap/coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc.ddx.rdf">
     <owl:imports rdf:resource="http://iridl.ldeo.columbia.edu/ontologies/opendap.owl"/>
     <owl:imports rdf:resource="http://iridl.ldeo.columbia.edu/ontologies/NetcdfConventionRegistry.owl"/>
  </owl:Ontology>
  <dapObj:Dataset rdf:about="">
     <rdfs:isDefinedBy rdf:resource="http://localhost:8080/opendap/coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc.ddx.rdf"/>
     <dapObj:dataset_id rdf:datatype="http://www.w3.org/2001/XMLSchema#string"/>
     <dapObj:type>
        <t:level0 xmlns:t="http://namespace.t" xmlns:grddl="http://www.w3.org/2003/g/data-view#"
                  xmlns="http://xml.opendap.org/ns/DAP/3.3#"
                  t:foo1="namespacedattribute">
           <dapObj:xmlAttribute dapObj:name="foo2" rdf:value="nonamespaceAttribute"/>
           <dapObj:xmlText>
           TextContent of Complex Type
       </dapObj:xmlText>
           <t:level1>simpleContent</t:level1>
           <dapObj:xmlContains>
              <t:level1>
                 <dapObj:xmlContains>
                    <t:level2>
                       <t:level3>simpleContent</t:level3>
                    </t:level2>
                 </dapObj:xmlContains>
              </t:level1>
           </dapObj:xmlContains>
        </t:level0>
     </dapObj:type>
  </dapObj:Dataset>
  <owl:DatatypeProperty rdf:about="http://localhost:8080/opendap/coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc.ddx/att#xmlTest">
     <rdfs:domain rdf:resource="http://iridl.ldeo.columbia.edu/ontologies/opendap.owl#Container"/>
     <rdfs:isDefinedBy rdf:resource="http://localhost:8080/opendap/coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc.ddx.rdf"/>
  </owl:DatatypeProperty>
</rdf:RDF>

Hacked HFRadar Example

Example 1

In which an entire coverage description is inserted into a DDX as OtherXML

Source XML

<?xml version="1.0" encoding="UTF-8"?>
<Dataset name="200803061600_HFRadar_USEGC_6km_rtv_SIO.nc"
         xmlns:grddl="http://www.w3.org/2003/g/data-view#"
         grddl:transformation="http://xml.opendap.org/transforms/ddxToRdfTriples.xsl"
         xmlns="http://xml.opendap.org/ns/DAP/3.3#"
         xmlns:dap="http://xml.opendap.org/ns/DAP/3.3#"
         dap_version="3.2"
         xmlns:xml="http://www.w3.org/XML/1998/namespace"
         xml:base="http://localhost:8080/opendap/coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc.ddx" >

    <Attribute name="wcsStuff" type="OtherXML" relationship="is-a" >
            <CoverageDescription xmlns="http://www.opengis.net/wcs/1.1" xmlns:ows="http://www.opengis.net/ows/1.1"
                                 xmlns:owcs="http://www.opengis.net/wcs/1.1/ows" xmlns:gml="http://www.opengis.net/gml/3.2"
                                 xmlns:xlink="http://www.w3.org/1999/xlink"
                                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                 xmlns:schemaLocation="http://www.opengis.net/wcs/1.1  http://schemas.opengis.net/wcs/1.1.0/wcsDescribeCoverage.xsd  http://www.opengis.net/ows/1.1  http://schemas.opengis.net/ows/1.1.0/owsAll.xsd  http://www.opengis.net/wcs/1.1/ows http://schemas.opengis.net/wcs/1.1.0/owsDataIdentification.xsd http://www.opengis.net/gml/3.2  http://schemas.opengis.net/gml/3.2.1/gml.xsd">
                <ows:Title>Near-Real Time Surface Ocean Velocity</ows:Title>
                <ows:Abstract>CoverageDescription generated by OPeNDAP WCS UseCase 2.0</ows:Abstract>
                <Identifier>coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc</Identifier>
                <Domain>
                    <SpatialDomain>
                        <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::4326">
                            <ows:LowerCorner>-97.8839 21.736</ows:LowerCorner>
                            <ows:UpperCorner>-57.2312 46.4944</ows:UpperCorner>
                        </ows:BoundingBox>
                    </SpatialDomain>
                    <TemporalDomain>
                        <gml:timePosition>2008-03-27T16:00:00.000Z</gml:timePosition>
                    </TemporalDomain>
                </Domain>
                <Range>
                    <Field>
                        <ows:Title>surface_eastward_sea_water_velocity</ows:Title>
                        <ows:Abstract>Eastward component of a 2D sea surface velocity vector.</ows:Abstract>
                        <Identifier>u</Identifier>
                        <Definition>
                            <ows:AnyValue/>
                        </Definition>
                        <NullValue>-32768</NullValue>
                        <owcs:InterpolationMethods>
                            <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
                        </owcs:InterpolationMethods>
                    </Field>
                    <Field>
                        <ows:Title>surface_northward_sea_water_velocity</ows:Title>
                        <ows:Abstract>Northward component of a 2D sea surface velocity vector.</ows:Abstract>
                        <Identifier>v</Identifier>
                        <Definition>
                            <ows:AnyValue/>
                        </Definition>
                        <NullValue>-32768</NullValue>
                        <owcs:InterpolationMethods>
                            <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
                        </owcs:InterpolationMethods>
                    </Field>
                    <Field>
                        <ows:Title>longitudinal dilution of precision</ows:Title>
                        <ows:Abstract>The longitudinal dilution of precision (DOPx) represents the\\012contribution of the
                            radars' configuration geometry to\\012uncertainty in the eastward velocity estimate (u). DOPx
                            is a\\012direct multiplier of the standard error in obtaining the\\012standard deviation for the
                            eastward velocity estimate from the\\012least squares best fit. DOPx and DOPy are commonly used
                            to\\012obtain the geometric dilution of precision\\012(GDOP = sqrt(DOPx^2 + DOPy^2)), a useful
                            metric for filtering\\012errant velocities due to poor geometry.
                        </ows:Abstract>
                        <Identifier>DOPx</Identifier>
                        <Definition>
                            <ows:AnyValue/>
                        </Definition>
                        <NullValue>-32768</NullValue>
                        <owcs:InterpolationMethods>
                            <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
                        </owcs:InterpolationMethods>
                    </Field>
                    <Field>
                        <ows:Title>latitudinal dilution of precision</ows:Title>
                        <ows:Abstract>The latitudinal dilution of precision (DOPy) represents the\\012contribution of the radars'
                            configuration geometry to\\012uncertainty in the northward velocity estimate (v). DOPy is
                            a\\012direct multiplier of the standard error in obtaining the\\012standard deviation for the
                            northward velocity estimate from the\\012least squares best fit. DOPx and DOPy are commonly used
                            to\\012obtain the geometric dilution of precision\\012(GDOP = sqrt(DOPx^2 + DOPy^2)), a useful
                            metric for filtering\\012errant velocities due to poor geometry.
                        </ows:Abstract>
                        <Identifier>DOPy</Identifier>
                        <Definition>
                            <ows:AnyValue/>
                        </Definition>
                        <NullValue>-32768</NullValue>
                        <owcs:InterpolationMethods>
                            <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
                        </owcs:InterpolationMethods>
                    </Field>
                </Range>
                <SupportedCRS>urn:ogc:def:crs:EPSG::4326</SupportedCRS>
                <SupportedFormat>netcdf-cf1.0</SupportedFormat>
                <SupportedFormat>dap2.0</SupportedFormat>
            </CoverageDescription>
    </Attribute>



    
    <Attribute name="site_code" type="Container">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site code</value>
        </Attribute>
    </Attribute>
    <Attribute name="site_netCode" type="Container">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site network affiliation code</value>
        </Attribute>
    </Attribute>
    <Attribute name="NC_GLOBAL" type="Container">
        <Attribute name="netcdf_library_version" type="String">
            <value>netcdf library version 3.6.1 of Feb 3 2008 23:15:25 $</value>
        </Attribute>
        <Attribute name="format_version" type="String">
            <value>HFRNet_1.0.0b2</value>
        </Attribute>
        <Attribute name="product_version" type="String">
            <value>HFRNet_1.1.01</value>
        </Attribute>
        <Attribute name="Conventions" type="String">
            <value>CF-1.1</value>
        </Attribute>
        <Attribute name="title" type="String">
            <value>Near-Real Time Surface Ocean Velocity</value>
        </Attribute>
        <Attribute name="institution" type="String">
            <value>Scripps Institution of Oceanography</value>
        </Attribute>
        <Attribute name="source" type="String">
            <value>Surface Ocean HF-Radar</value>
        </Attribute>
        <Attribute name="history" type="String">
            <value>12-Mar-2008 22:26:19: NetCDF file created</value>
        </Attribute>
        <Attribute name="references" type="String">
            <value>Terrill, E. et al., 2006. Data Management and Real-time\\012Distribution in the HF-Radar National
                Network. Proceedings\\012of the MTS/IEEE Oceans 2006 Conference, Boston MA,\\012September 2006.
            </value>
        </Attribute>
        <Attribute name="creator_name" type="String">
            <value>Mark Otero</value>
        </Attribute>
        <Attribute name="creator_email" type="String">
            <value>motero@mpl.ucsd.edu</value>
        </Attribute>
        <Attribute name="creator_url" type="String">
            <value>http://cordc.ucsd.edu/projects/mapping/</value>
        </Attribute>
        <Attribute name="summary" type="String">
            <value>Surface ocean velocities estimated from HF-Radar are\\012representitive of the upper 0.3 - 2.5 meters
                of the\\012ocean. The main objective of near-real time\\012processing is to produce the best product
                from\\012available data at the time of processing. Radial\\012velocity measurements are obtained from
                individual\\012radar sites through the HF-Radar Network and\\012processed to create near-real time
                velocities\\012(RTVs)
            </value>
        </Attribute>
        <Attribute name="geospatial_lat_min" type="Float32">
            <value>21.73596001</value>
        </Attribute>
        <Attribute name="geospatial_lat_max" type="Float32">
            <value>46.49441910</value>
        </Attribute>
        <Attribute name="geospatial_lon_min" type="Float32">
            <value>-97.88385010</value>
        </Attribute>
        <Attribute name="geospatial_lon_max" type="Float32">
            <value>-57.23120880</value>
        </Attribute>
        <Attribute name="grid_resolution" type="String">
            <value>6km</value>
        </Attribute>
        <Attribute name="grid_projection" type="String">
            <value>equidistant cylindrical</value>
        </Attribute>
        <Attribute name="regional_description" type="String">
            <value>Unites States, East and Gulf Coast</value>
        </Attribute>
    </Attribute>
    <Attribute name="DODS_EXTRA" type="Container">
        <Attribute name="Unlimited_Dimension" type="String">
            <value>time</value>
        </Attribute>
    </Attribute>

    <Array name="time">
        <Attribute name="standard_name" type="String">
            <value>time</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>seconds since 1970-01-01</value>
        </Attribute>
        <Attribute name="calendar" type="String">
            <value>gregorian</value>
        </Attribute>
        <Int32/>
        <dimension name="time" size="1"/>
    </Array>
    <Array name="lat">
        <Attribute name="standard_name" type="String">
            <value>latitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_north</value>
        </Attribute>
        <Float32/>
        <dimension name="lat" size="460"/>
    </Array>
    <Array name="lon">
        <Attribute name="standard_name" type="String">
            <value>longitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_east</value>
        </Attribute>
        <Float32/>
        <dimension name="lon" size="701"/>
    </Array>
    <Grid name="u">
        <Attribute name="standard_name" type="String">
            <value>surface_eastward_sea_water_velocity</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>m s-1</value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Attribute name="ancillary_variables" type="String">
            <value>DOPx</value>
        </Attribute>
        <Array name="u">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Grid name="v">
        <Attribute name="standard_name" type="String">
            <value>surface_northward_sea_water_velocity</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>m s-1</value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Attribute name="ancillary_variables" type="String">
            <value>DOPy</value>
        </Attribute>
        <Array name="v">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Grid name="DOPx">
        <Attribute name="long_name" type="String">
            <value>longitudinal dilution of precision</value>
        </Attribute>
        <Attribute name="comment" type="String">
            <value>The longitudinal dilution of precision (DOPx) represents the\\012contribution of the radars'
                configuration geometry to\\012uncertainty in the eastward velocity estimate (u). DOPx is a\\012direct
                multiplier of the standard error in obtaining the\\012standard deviation for the eastward velocity
                estimate from the\\012least squares best fit. DOPx and DOPy are commonly used to\\012obtain the
                geometric dilution of precision\\012(GDOP = sqrt(DOPx^2 + DOPy^2)), a useful metric for
                filtering\\012errant velocities due to poor geometry.
            </value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Array name="DOPx">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Grid name="DOPy">
        <Attribute name="long_name" type="String">
            <value>latitudinal dilution of precision</value>
        </Attribute>
        <Attribute name="comment" type="String">
            <value>The latitudinal dilution of precision (DOPy) represents the\\012contribution of the radars'
                configuration geometry to\\012uncertainty in the northward velocity estimate (v). DOPy is a\\012direct
                multiplier of the standard error in obtaining the\\012standard deviation for the northward velocity
                estimate from the\\012least squares best fit. DOPx and DOPy are commonly used to\\012obtain the
                geometric dilution of precision\\012(GDOP = sqrt(DOPx^2 + DOPy^2)), a useful metric for
                filtering\\012errant velocities due to poor geometry.
            </value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Array name="DOPy">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Array name="site_lat">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site latitudes</value>
        </Attribute>
        <Attribute name="standard_name" type="String">
            <value>latitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_north</value>
        </Attribute>
        <Float32/>
        <dimension name="nSites" size="27"/>
    </Array>
    <Array name="site_lon">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site longitudes</value>
        </Attribute>
        <Attribute name="standard_name" type="String">
            <value>longitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_east</value>
        </Attribute>
        <Float32/>
        <dimension name="nSites" size="27"/>
    </Array>
    <Array name="procParams">
        <Attribute name="long_name" type="String">
            <value>RTV processing parameters</value>
        </Attribute>
        <Attribute name="comment" type="String">
            <value>\\01201) Maximum GDOP threshold\\01202) Maximum speed threshold (cm s-1)\\01203) Minimum number of
                sites required\\01204) Minimum number of radials required\\01205) Maximum angular gap to interpolate
                radial\\012 data over (degrees, 0 = no interpolation)\\01206) Maximum gap in range to interpolate
                radial\\012 data over (range-resolution, 0 = no interpolation)\\01207) Spatial search radius for radial
                solutions (km)
            </value>
        </Attribute>
        <Float32/>
        <dimension name="nProcParam" size="7"/>
    </Array>

</Dataset>

XSLT

Same as previous.

RDF Result

Example 2

In which missing components for WCS are added throughout the DDX as other XML.

Source XML

<?xml version="1.0" encoding="UTF-8"?>
<Dataset name="200803061600_HFRadar_USEGC_6km_rtv_SIO.nc"
         xmlns:grddl="http://www.w3.org/2003/g/data-view#"
         grddl:transformation="http://xml.opendap.org/transforms/ddxToRdfTriples.xsl"
         xmlns="http://xml.opendap.org/ns/DAP/3.3#"
         xmlns:dap="http://xml.opendap.org/ns/DAP/3.3#"
         dap_version="3.2"
         xmlns:xml="http://www.w3.org/XML/1998/namespace"
         xml:base="http://localhost:8080/opendap/coverage/200803061600_HFRadar_USEGC_6km_rtv_SIO.nc.ddx" >

    <Attribute name="nameNotUsed01" type="OtherXML" relationship="has-a" >
            <Domain xmlns="http://www.opengis.net/wcs/1.1" 
                    xmlns:ows="http://www.opengis.net/ows/1.1"
                    xmlns:gml="http://www.opengis.net/gml/3.2"
                    >
                    
                    <SpatialDomain>
                        <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::4326">
                            <ows:LowerCorner>-97.8839 21.736</ows:LowerCorner>
                            <ows:UpperCorner>-57.2312 46.4944</ows:UpperCorner>
                        </ows:BoundingBox>
                    </SpatialDomain>
                    <TemporalDomain>
                        <gml:timePosition>2008-03-27T16:00:00.000Z</gml:timePosition>
                    </TemporalDomain>
                </Domain>
                
                <SupportedCRS xmlns="http://www.opengis.net/wcs/1.1">urn:ogc:def:crs:EPSG::4326</SupportedCRS>
                <SupportedFormat xmlns="http://www.opengis.net/wcs/1.1">netcdf-cf1.0</SupportedFormat>
                <SupportedFormat xmlns="http://www.opengis.net/wcs/1.1">dap2.0</SupportedFormat>
    </Attribute>


    
    <Attribute name="site_code" type="Container">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site code</value>
        </Attribute>
    </Attribute>
    <Attribute name="site_netCode" type="Container">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site network affiliation code</value>
        </Attribute>
    </Attribute>
    <Attribute name="NC_GLOBAL" type="Container">
        <Attribute name="netcdf_library_version" type="String">
            <value>netcdf library version 3.6.1 of Feb 3 2008 23:15:25 $</value>
        </Attribute>
        <Attribute name="format_version" type="String">
            <value>HFRNet_1.0.0b2</value>
        </Attribute>
        <Attribute name="product_version" type="String">
            <value>HFRNet_1.1.01</value>
        </Attribute>
        <Attribute name="Conventions" type="String">
            <value>CF-1.1</value>
        </Attribute>
        <Attribute name="title" type="String">
            <value>Near-Real Time Surface Ocean Velocity</value>
        </Attribute>
        <Attribute name="institution" type="String">
            <value>Scripps Institution of Oceanography</value>
        </Attribute>
        <Attribute name="source" type="String">
            <value>Surface Ocean HF-Radar</value>
        </Attribute>
        <Attribute name="history" type="String">
            <value>12-Mar-2008 22:26:19: NetCDF file created</value>
        </Attribute>
        <Attribute name="references" type="String">
            <value>Terrill, E. et al., 2006. Data Management and Real-time\\012Distribution in the HF-Radar National
                Network. Proceedings\\012of the MTS/IEEE Oceans 2006 Conference, Boston MA,\\012September 2006.
            </value>
        </Attribute>
        <Attribute name="creator_name" type="String">
            <value>Mark Otero</value>
        </Attribute>
        <Attribute name="creator_email" type="String">
            <value>motero@mpl.ucsd.edu</value>
        </Attribute>
        <Attribute name="creator_url" type="String">
            <value>http://cordc.ucsd.edu/projects/mapping/</value>
        </Attribute>
        <Attribute name="summary" type="String">
            <value>Surface ocean velocities estimated from HF-Radar are\\012representitive of the upper 0.3 - 2.5 meters
                of the\\012ocean. The main objective of near-real time\\012processing is to produce the best product
                from\\012available data at the time of processing. Radial\\012velocity measurements are obtained from
                individual\\012radar sites through the HF-Radar Network and\\012processed to create near-real time
                velocities\\012(RTVs)
            </value>
        </Attribute>
        <Attribute name="geospatial_lat_min" type="Float32">
            <value>21.73596001</value>
        </Attribute>
        <Attribute name="geospatial_lat_max" type="Float32">
            <value>46.49441910</value>
        </Attribute>
        <Attribute name="geospatial_lon_min" type="Float32">
            <value>-97.88385010</value>
        </Attribute>
        <Attribute name="geospatial_lon_max" type="Float32">
            <value>-57.23120880</value>
        </Attribute>
        <Attribute name="grid_resolution" type="String">
            <value>6km</value>
        </Attribute>
        <Attribute name="grid_projection" type="String">
            <value>equidistant cylindrical</value>
        </Attribute>
        <Attribute name="regional_description" type="String">
            <value>Unites States, East and Gulf Coast</value>
        </Attribute>
    </Attribute>
    <Attribute name="DODS_EXTRA" type="Container">
        <Attribute name="Unlimited_Dimension" type="String">
            <value>time</value>
        </Attribute>
    </Attribute>

    <Array name="time">
        <Attribute name="standard_name" type="String">
            <value>time</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>seconds since 1970-01-01</value>
        </Attribute>
        <Attribute name="calendar" type="String">
            <value>gregorian</value>
        </Attribute>
        <Int32/>
        <dimension name="time" size="1"/>
    </Array>
    <Array name="lat">
        <Attribute name="standard_name" type="String">
            <value>latitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_north</value>
        </Attribute>
        <Float32/>
        <dimension name="lat" size="460"/>
    </Array>
    <Array name="lon">
        <Attribute name="standard_name" type="String">
            <value>longitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_east</value>
        </Attribute>
        <Float32/>
        <dimension name="lon" size="701"/>
    </Array>

    <Grid name="u">
        <Attribute name="nameNotUsed" type="OtherXML">
            <ows:Abstract xmlns:ows="http://www.opengis.net/ows/1.1">Eastward component of a 2D sea surface velocity vector.</ows:Abstract>
            <Definition xmlns="http://www.opengis.net/wcs/1.1" 
                    xmlns:ows="http://www.opengis.net/ows/1.1"
                    >
                <ows:AnyValue/>
            </Definition>
            <owcs:InterpolationMethods xmlns:owcs="http://www.opengis.net/wcs/1.1/ows" >
                <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
            </owcs:InterpolationMethods>
        </Attribute>
        <Attribute name="standard_name" type="String">
            <value>surface_eastward_sea_water_velocity</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>m s-1</value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Attribute name="ancillary_variables" type="String">
            <value>DOPx</value>
        </Attribute>
        <Array name="u">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Grid name="v">
        <Attribute name="nameNotUsed" type="OtherXML">
            <ows:Abstract xmlns:ows="http://www.opengis.net/ows/1.1">Northward component of a 2D sea surface velocity vector.</ows:Abstract>
            <Definition xmlns="http://www.opengis.net/wcs/1.1" 
                    xmlns:ows="http://www.opengis.net/ows/1.1"
                    >
                <ows:AnyValue/>
            </Definition>
            <owcs:InterpolationMethods xmlns:owcs="http://www.opengis.net/wcs/1.1/ows" >
                <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
            </owcs:InterpolationMethods>
        </Attribute>
        <Attribute name="standard_name" type="String">
            <value>surface_northward_sea_water_velocity</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>m s-1</value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Attribute name="ancillary_variables" type="String">
            <value>DOPy</value>
        </Attribute>
        <Array name="v">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Grid name="DOPx">
        <Attribute name="nameNotUsed" type="OtherXML">
            <Definition xmlns="http://www.opengis.net/wcs/1.1" 
                    xmlns:ows="http://www.opengis.net/ows/1.1"
                    >
                <ows:AnyValue/>
            </Definition>
            <owcs:InterpolationMethods xmlns:owcs="http://www.opengis.net/wcs/1.1/ows" >
                <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
            </owcs:InterpolationMethods>
        </Attribute>
        <Attribute name="long_name" type="String">
            <value>longitudinal dilution of precision</value>
        </Attribute>
        <Attribute name="comment" type="String">
            <value>The longitudinal dilution of precision (DOPx) represents the\\012contribution of the radars'
                configuration geometry to\\012uncertainty in the eastward velocity estimate (u). DOPx is a\\012direct
                multiplier of the standard error in obtaining the\\012standard deviation for the eastward velocity
                estimate from the\\012least squares best fit. DOPx and DOPy are commonly used to\\012obtain the
                geometric dilution of precision\\012(GDOP = sqrt(DOPx^2 + DOPy^2)), a useful metric for
                filtering\\012errant velocities due to poor geometry.
            </value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Array name="DOPx">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Grid name="DOPy">
        <Attribute name="nameNotUsed" type="OtherXML">
            <Definition xmlns="http://www.opengis.net/wcs/1.1" 
                    xmlns:ows="http://www.opengis.net/ows/1.1"
                    >
                <ows:AnyValue/>
            </Definition>
            <owcs:InterpolationMethods xmlns:owcs="http://www.opengis.net/wcs/1.1/ows" >
                <owcs:DefaultMethod>nearest</owcs:DefaultMethod>
            </owcs:InterpolationMethods>
        </Attribute>
        <Attribute name="long_name" type="String">
            <value>latitudinal dilution of precision</value>
        </Attribute>
        <Attribute name="comment" type="String">
            <value>The latitudinal dilution of precision (DOPy) represents the\\012contribution of the radars'
                configuration geometry to\\012uncertainty in the northward velocity estimate (v). DOPy is a\\012direct
                multiplier of the standard error in obtaining the\\012standard deviation for the northward velocity
                estimate from the\\012least squares best fit. DOPx and DOPy are commonly used to\\012obtain the
                geometric dilution of precision\\012(GDOP = sqrt(DOPx^2 + DOPy^2)), a useful metric for
                filtering\\012errant velocities due to poor geometry.
            </value>
        </Attribute>
        <Attribute name="_FillValue" type="Int16">
            <value>-32768</value>
        </Attribute>
        <Attribute name="scale_factor" type="Float32">
            <value>0.009999999776</value>
        </Attribute>
        <Array name="DOPy">
            <Int16/>
            <dimension name="time" size="1"/>
            <dimension name="lat" size="460"/>
            <dimension name="lon" size="701"/>
        </Array>
        <Map name="time">
            <Int32/>
            <dimension name="time" size="1"/>
        </Map>
        <Map name="lat">
            <Float32/>
            <dimension name="lat" size="460"/>
        </Map>
        <Map name="lon">
            <Float32/>
            <dimension name="lon" size="701"/>
        </Map>
    </Grid>
    <Array name="site_lat">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site latitudes</value>
        </Attribute>
        <Attribute name="standard_name" type="String">
            <value>latitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_north</value>
        </Attribute>
        <Float32/>
        <dimension name="nSites" size="27"/>
    </Array>
    <Array name="site_lon">
        <Attribute name="long_name" type="String">
            <value>Contributing radar site longitudes</value>
        </Attribute>
        <Attribute name="standard_name" type="String">
            <value>longitude</value>
        </Attribute>
        <Attribute name="units" type="String">
            <value>degrees_east</value>
        </Attribute>
        <Float32/>
        <dimension name="nSites" size="27"/>
    </Array>
    <Array name="procParams">
        <Attribute name="long_name" type="String">
            <value>RTV processing parameters</value>
        </Attribute>
        <Attribute name="comment" type="String">
            <value>\\01201) Maximum GDOP threshold\\01202) Maximum speed threshold (cm s-1)\\01203) Minimum number of
                sites required\\01204) Minimum number of radials required\\01205) Maximum angular gap to interpolate
                radial\\012 data over (degrees, 0 = no interpolation)\\01206) Maximum gap in range to interpolate
                radial\\012 data over (range-resolution, 0 = no interpolation)\\01207) Spatial search radius for radial
                solutions (km)
            </value>
        </Attribute>
        <Float32/>
        <dimension name="nProcParam" size="7"/>
    </Array>

</Dataset>

XSLT

RDF