64 lines
2.4 KiB
XML
64 lines
2.4 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
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.
|
|
-->
|
|
|
|
<xs:schema
|
|
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:dfdl="http://www.ogf.org/dfdl/dfdl-1.0/"
|
|
xmlns:fn="http://www.w3.org/2005/xpath-functions"
|
|
elementFormDefault="qualified">
|
|
<xs:include schemaLocation="org/apache/daffodil/xsd/DFDLGeneralFormat.dfdl.xsd"/>
|
|
<xs:annotation>
|
|
<xs:appinfo source="http://www.ogf.org/dfdl/">
|
|
<dfdl:format ref="GeneralFormat"/>
|
|
<dfdl:defineEscapeScheme name="Quotes">
|
|
<dfdl:escapeScheme
|
|
escapeKind="escapeBlock"
|
|
escapeBlockStart='"'
|
|
escapeBlockEnd='"'
|
|
escapeEscapeCharacter="\"
|
|
extraEscapedCharacters=""
|
|
generateEscapeBlock="whenNeeded"
|
|
/>
|
|
</dfdl:defineEscapeScheme>
|
|
</xs:appinfo>
|
|
</xs:annotation>
|
|
<xs:element name="CSV">
|
|
<xs:complexType>
|
|
<xs:sequence dfdl:separator="%NL;" dfdl:separatorPosition="infix" dfdl:separatorSuppressionPolicy="trailingEmpty">
|
|
<xs:element name="header">
|
|
<xs:complexType>
|
|
<xs:sequence dfdl:separator="," dfdl:separatorPosition="infix">
|
|
<xs:element name="title" maxOccurs="unbounded" type="xs:string" dfdl:lengthKind="delimited"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
<xs:element name="row" maxOccurs="unbounded">
|
|
<xs:complexType>
|
|
<xs:sequence dfdl:separator="," dfdl:separatorPosition="infix">
|
|
<xs:element name="field" minOccurs="11" maxOccurs="unbounded" type="xs:string" dfdl:lengthKind="delimited"
|
|
dfdl:escapeSchemeRef="Quotes"
|
|
dfdl:occursCount="{ fn:count(../../header/title) }"
|
|
dfdl:occursCountKind="expression" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:schema>
|