5G-MAG / Standards

Specifications related to 5G-MAG's areas of work. Tracking comments, bug-fixing, request for new features, etc.
https://www.5g-mag.com/standards
12 stars 4 forks source link

TS 26.346 FLUTE FDT Profile for 5MBS & delimiter usage #120

Open chburdinat opened 8 months ago

chburdinat commented 8 months ago

Context

5MBS use the profiled FDT Schema from clause L.6 in TS 26.346 for the Object Distribution Method (see clause 6.2 from TS 26.517). This profile FDT Schema reuses the delimiter element, specified in Annex J.2.

The delimiter element was introduced to ensure backward and forward compatibility for the different schema versions, according to the following mechanism:

<xs:complexType name="exampleType">
    <xs:sequence>
        <xs:element name="firstElement" type="xs:string" maxOccurs="unbounded"/>
        <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
</xs:complexType>
<xs:complexType name="exampleType">
    <xs:sequence>
        <xs:element name="firstElement" type="xs:string" maxOccurs="unbounded"/>
                <!--new element from a new namespace-->
                <xs:element ref="new:newElement" minOccurs="0"/>
                <xs:element ref="sv:delimiter"/>
        <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
</xs:complexType>

To ensure backward compatibility, we want that a document instance, valid with the new schema, is valid as well with the old one. This is achieved by affecting delimiter to another namespace, so that new:newElement and sv:delimiter are associated to the of the old schema.

Description of the doubt

In L.6 of TS 26.346, there is a delimiter within the file element. It was introduced first to solve the UPA rule with the introduction of mbms2007:Cache-Control in the initial FDT schema (see 7.2.10). As Cache-Control is sharing now the same namespace in L.6, there isn’t any more issue with the UPA rule. Is there another reason to keep a mandatory delimiter element here ?

In addition, to ensure backward compatibility, the delimiter element shall be affected to another namespace.