Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace xs:sequence by xs:all #10

Open
gotson opened this issue Jan 21, 2022 · 4 comments · May be fixed by #29
Open

Replace xs:sequence by xs:all #10

gotson opened this issue Jan 21, 2022 · 4 comments · May be fixed by #29
Labels
non-breaking The change will generate a new minor version of the schema RFC Request for comments

Comments

@gotson
Copy link
Member

gotson commented Jan 21, 2022

Someone on Discord (i think @therobbiedavis) brought up the point that the current elements are contained in a xs:sequence.

The sequence would mean that (source):

The sequence element specifies that the child elements must appear in a sequence

  • First, this doesn't really make sense from a domain perspective.
  • Second, most consuming applications probably ignore that.

@ajslater brought up that we could replace it with xs:all, which represents an unordered list. It has an additional constraint in XSD 1.0 of limiting elements to 0 or 1 occurrence, but all the elements in the existing schema already have minOccurs="0" maxOccurs="1", so that's fine.

This would make the validation of the XML using the XSD schema easier, where it would probably throw errors if elements are out of order.

@gotson
Copy link
Member Author

gotson commented Jan 21, 2022

@ajslater @majora2007 would you confirm whether your respective parsers ignore the order of the elements? Komga doesn't care for sure.

@gotson gotson added non-breaking The change will generate a new minor version of the schema RFC Request for comments labels Jan 21, 2022
@ajslater
Copy link
Contributor

My parser doesn't pay attention to element order when reading comicinfo.xml.

@majora2007
Copy link

Kavita also does not pay attention to element order.

@ThePromidius ThePromidius linked a pull request Jul 12, 2022 that will close this issue
@IngBertolini
Copy link
Contributor

Also why ComicPageType is defined as axs:list when a page can be only of one type?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
non-breaking The change will generate a new minor version of the schema RFC Request for comments
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants