-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Michał Górny: > On Sat, 30 Apr 2016 02:36:18 -0400 Göktürk Yüksek > <[email protected]> wrote: > >> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 >> >> Michał Górny: >>> On Thu, 28 Apr 2016 19:41:06 -0400 Göktürk Yüksek >>> <[email protected]> wrote: >>> >>>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 >>>> >>>> Brian Dolbec: >>>>> On Thu, 28 Apr 2016 15:39:05 -0400 Göktürk Yüksek >>>>> <[email protected]> wrote: >>>>> >>>>>> --- metadata.dtd | 5 +---- 1 file changed, 1 >>>>>> insertion(+), 4 deletions(-) >>>>>> >>>>>> diff --git a/metadata.dtd b/metadata.dtd index >>>>>> 7626a57..b608852 100644 --- a/metadata.dtd +++ >>>>>> b/metadata.dtd @@ -3,7 +3,7 @@ <!ATTLIST catmetadata >>>>>> pkgname CDATA ""> >>>>>> >>>>>> <!-- Metadata for a package --> -<!ELEMENT pkgmetadata ( >>>>>> >>>>>> (maintainer|natural-name|longdescription|slots|use|upstream)* >>>>>> )> +<!ELEMENT pkgmetadata ( >>>>>> (maintainer|longdescription|slots|use|upstream)* )> >>>>>> <!ATTLIST pkgmetadata pkgname CDATA ""> <!-- One tag for >>>>>> each maintainer of a package, multiple allowed--> @@ >>>>>> -13,9 +13,6 @@ explicit type) for Gentoo maintainers is >>>>>> prohibited. --> <!ATTLIST maintainer type >>>>>> (person|project|unknown) "unknown"> >>>>>> >>>>>> - <!-- Natural name for package, example: LibreOffice >>>>>> (for app-office/libreoffice) --> - <!ELEMENT >>>>>> natural-name (#PCDATA) >>>>>>> - <!-- A long description of the package in freetext--> >>>>>>> >>>>>> <!ELEMENT longdescription (#PCDATA|pkg|cat)* > >>>>> >>>>> Isn't this almost obsolete? it's now xmlschema... And I >>>>> hope to have the new repoman with it out this weekend :) >>>> >>>> Does GLEP 68 explicitly declare metadata.dtd obsolete? I see >>>> that the example metadata.xml on the GLEP is missing DOCTYPE, >>>> are we getting rid of those too? >>> >>> No, and I don't know. >>> >>> metadata.dtd is still required by many tools, and as such it >>> makes sense to keep it. However, we may want to put some >>> warning that it's not very strict, and allows major structural >>> violations due to technical limitations. >>> >> After a discussion with ulm on IRC, we agreed that the following >> makes sense: "the format of the metadata is defined in GLEP 68. >> the syntax is defined in metadata.dtd. The xml-schema can be used >> for stricter validation checks." If you have no objections, I >> will update devmanual based on this description. > > What is the precise difference between 'format' and 'syntax' here? > I'm no native English speaker, and I don't see any obvious split > of responsibility between the two here, and I'm pretty sure this > will be quite confusing for other people as well. > I admit that it is hard to make a clear distinction. When I look at the GLEPs replaced by GLEP68, I see that they propose a change for metadata.xml and explain how that affects metadata.dtd. GLEP34 has "The DTD file would need to be updated to include the <catmetadata> element.", GLEP46 explicitly says "metadata.dtd should allow the use of a upstream tag in metadata.xml.", GLEP56 points to #199788 which required DTD to be patched. GLEP68 is rather vague as to how metadata.dtd is affected. It doesn't say whether it should be updated or if it has any role at all.
GLEP68 provides a single human readable specification for the metadata format. In that respect, however, the DTD along with the comments in it is just as expressive, if not better: a developer can read through the DTD and learn all the information contained in the GLEP, plus the remote-id values which are not part of the specification for reasons you stated earlier. And that was the reason why I used the term "syntax": the DTD lists all the allowed elements, attributes, and values for the metadata that should be used in conformance with the GLEP . In the end, the DTD isn't much better than the GLEP as a human readable document and does a worse job than the xsd as a machine readable document for validation purposes. Once repoman switches to the xml-schema, there would be no good use for it and I don't know what should be done about the DTD. I think that until we figure it out, we should keep it in sync with the GLEP and xsd. -----BEGIN PGP SIGNATURE----- iQEcBAEBCgAGBQJXJoZnAAoJEIT4AuXAiM4z1tsIAKj7/dBAQcsttsMxJbOlM4Ew GMiS4LK3/QZqlEM8ixL3otKptbWDhyJiB+c7cafyAamgFKGprWYnk2X+zFEfgmRw adjWjH4fwtS/AW/VFU4aeE4cYVOGF0ju0dh6ZO6bAYl4MJtcS5xVtRdDkIm3eacX OMjdzvuKgwYKiYxRu2AmCLS2+jExEj48mDEa9jPZMOb14xEljsRNjF76kPr6o8eG /XJ6t5o4+Ckkpwx4kckBUDtSj6ipuPz0SqwVrYLxhogwDas6E0h9BovGuaeLmgVM GYCXJzsetuWIvbRxJJhH9cTADjCwAt7SYGfdA72fknnmf0QZgScPjBnLUQSn2G4= =/CcU -----END PGP SIGNATURE-----
