Capture more of the Document#668
Merged
dubinsky merged 1 commit intoscala:mainfrom Jun 21, 2023
dubinsky:more-document-information
Merged
Capture more of the Document#668dubinsky merged 1 commit intoscala:mainfrom dubinsky:more-document-information
dubinsky merged 1 commit intoscala:mainfrom
dubinsky:more-document-information
Conversation
Member
|
no objection here — feel free to merge if no other reviewers appear |
Contributor
Author
Thank you! |
- handle Locator2, DTDHandler, DeclHandler, and LexicalHandler DTD and entity methods; - introduce DtdBuilder and delegate DTD methods to it; - introduce ElementContentModel and delegate parsing of the element content model in the DTD element declarations to it; - XMLLoader.loadDocument() returns baseURI, XML version, encoding and standAlone flag and DTD; - tests demonstrating the new returns;
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Now that
XMLoaderreturnsDocument, there is a place to return more information abut the parsed XML document - and this change does that, bringingXMLLoaderto parity with theConstructingParser; returned now are:baseURI(whichConstructingParsernever returned and indeed couldn't return);ConstructingParserreturns correctly only if it is "1.0");standalonestatus of the document;ConstructingParserseems unable to parse documents encoded inUTF-16);DTD(ConstructingParserdoes not return element and attribute declarations, notations and some entities).To preserve binary compatibility, parsed DTD is converted (with some loss of fidelity) into pre-existing
ContentModelclasses, instead of replacing them with the newly-introducedElementContentModel.To avoid capturing by the binary compatibility rules, newly introduced classes are package-private.