aboutsummaryrefslogtreecommitdiffstats
path: root/lib/xmerl/src
AgeCommit message (Collapse)Author
2017-05-24[xmerl] Fix endDocument bug in output backendsLars Thorsen
* Fix problem of unexpected endDocument in the old_dom and simple output backends
2017-05-24[xmerl] Fix fragmented xml directive bug and replace ets tableLars Thorsen
* Fix continuation bug if the xml directive is fragmented * Replace the ENTITY ets table with a map
2017-03-10Update copyright yearRickard Green
2017-03-07[xmerl] Fix compiler and dialyzer warningsLars Thorsen
2017-02-22[xmerl] Remove faulty throwsLars Thorsen
2017-02-22[xmerl] Fix XML "well-formedness" bug i SAX parserLars Thorsen
Changed the XML Sax parser behaviour so it returns an error if there are something more in the file after the the matching document. If one using the xmerl_sax_parser:stream() a rest is allowed which then can be sent to a new call of xmerl_sax_parser:stream() to parse next document. This is done to be compliant with XML conformance tests.
2017-02-22[xmerl] Correct bug handling multiple documents on a streamLars Thorsen
Change how to interpret end of document to comply with Tim Brays comment on the standard. This makes it possible to handle more than one doc on a stream, the standard makes it impossible to know when the document is ended without waiting for the next document (and not always even that). Tim Brays comment about the trailing "Misc" rule: The fact that you're allowed some trailing junk after the root element, I decided (but unfortunately too late) is a real design error in XML. If I'm writing a network client, I'm probably going to close the link as soon as a I see the root element end-tag, and not depend on the other end closing it down properly. Furthermore, if I want to send a succession of XML documents over a network link, if I find a processing instruction after a root element, is it a trailer on the previous document, or part of the prolog of the next?
2017-02-15[xmerl] Correct handling of implicit XML namespaceLars Thorsen
The namespace_conformant option did not work when parsing documents without explicit XML namespace declaration.
2016-11-30Include explicit attrs when default_attrs=trueShaun Mangelsdorf
With the `default_attrs` option set to `true`, xmerl was replacing the attributes for each element with the default attributes, discarding any attributes which were explicitly set. The new behaviour appends the default attributes, keeping the explicit attributes intact.
2016-09-12[xmerl] Fix link problems in documentationLars Thorsen
2016-05-19xmerl: Comment out unreachable clausesKostis Sagonas
A slightly stronger version of Dialyzer discovered that various clauses in the code of `xmerl` are unreachable. This code was commented out; There is little reason to have code bloat that simply causes confusion. An alternative change would be to simply delete this code.
2016-05-17xmerl: Fix unmatched return warningsBjörn-Egil Dahlberg
2016-03-15update copyright-yearHenrik Nord
2016-02-17xmerl: Remove 'no_return' Dialyzer warningsHans Bolinder
2016-02-17xmerl: Add suppression of Dialyzer warningsHans Bolinder
2015-08-11Remove built-in definition of xml.xsd from xmerlTobias Schlager
Removes the built-in definitions of http://www.w3.org/2001/xml.xsd from the xmerl_xsd module. xmerl_xsd does load the definitions of the above schema into its processing table during initialization. This leads to the inability to process XSD schemas that properly import xml.xsd (as suggested in xml.xsd itself). Furthermore, the definitions are loaded from a binary containing the corresponding terms in Erlang external term format. Since this is not refactoring safe the intended functionality already broke long ago (prior to github import) because some of the record definitions did change in releases older than R13B03. To sum up, the current code does not do anything useful because the built-in definitions from the binary can't be used due to incompatible records. Thus, this fix is not backwards incompatible. The change also adds two new test cases covering common use-cases when using 'xml:' types in custom schemas.
2015-06-18Change license text to APLv2Bruce Yinhe
2015-06-08Merge branch 'richcarl/shut-up-xmerl'Henrik Nord
* richcarl/shut-up-xmerl: Stop xmerl printing to stdout OTP-12810
2015-05-25Update runtime_dependencies in application resource filesHans Bolinder
Applications that use the new erl_anno module are depending on STDLIB 2.5. Note that CosNotification, Megaco, SNMP, Xmerl, and Parsetools use the erl_anno module via the Yecc parsers only (the header file in lib/parsetools/include/yeccpre.hrl calls the erl_anno module). HiPE does not call the erl_anno module, but uses an exported type. We have chosen to make HiPE dependent on the erl_anno module.
2015-05-08[xmerl] Fix compiler warningsLars Thorsen
2015-04-28Stop xmerl printing to stdoutRichard Carlsson
Replace sloppy calls to io:format() in xmerl to use error_logger or debug macros instead, as appropriate.
2014-03-20Introduce runtime_dependencies in .app filesRickard Green
Most dependencies introduced are exactly the dependencies to other applications found by xref. That is, there might be real dependencies missing. There might also be pure debug dependencies listed that probably should be removed. Each application has to be manually inspected in order to ensure that all real dependencies are listed. All dependencies introduced are to application versions used in OTP 17.0. This since the previously used version scheme wasn't designed for this, and in order to minimize the work of introducing the dependencies.
2014-02-18Fix library application appup filesTobias Schlager
As discussed in issue #240 *all* OTP library applications use the '.*' wildcard as up and down version. This makes library applications always up- and downgradeable. Using the wildcard version obsoletes all maintenance tasks regarding library applications' appup files. Additionally, it prevents upgrade problems caused by automatically included application dependencies when using reltool to create releases. Missing copyright headers are now consistently present.
2014-01-21Merge branch 'maint'Magnus Lidén
2014-01-21[xmerl] Fix problem with header of next XML document is in the bufferLars Thorsen
when using xmerl_sax_parser:stream/2 function.
2014-01-21[xmerl] Fix bug in SAX parser when next doc start in the same bufferLars Thorsen
2013-11-06Merge branch 'maint'Fredrik Gustafsson
2013-11-06Merge branch 'richcarl/xmerl-avoid-code-server-serialization/OTP-11463' into ↵Fredrik Gustafsson
maint * richcarl/xmerl-avoid-code-server-serialization/OTP-11463: Avoid serialization on code_server in xmerl:export()
2013-11-05Merge branch 'maint'Fredrik Gustafsson
2013-11-05Avoid serialization on code_server in xmerl:export()Richard Carlsson
The inheritance mechanism in xmerl used to use 'catch apply(M,F,Args)' to try different modules M until one was found that had a function F/A. However, when M:F/A does not exist, apply/3 will trap to error_handler:undefined_function/3, which will call code:ensure_loaded(M), making a synchronous request to the code server process. If many processes tried to use xmerl:export() concurrently, they would get serialized waiting for the code server process. This patch uses erlang:function_exported/3 instead to check if M:F/A exists. If M exists, it should already have been loaded at that point due to the inheritance checking in the xmerl:callbacks/1 function.
2013-11-04xmerl: Use context namespace declarations to resolve prefix node testsDaniel White
Previously, a match would not be found if the namespace prefix in the XPath query was not contained in the original document. This allows the `namespace' option to provide a prefix that will be resolved to a namespace URI. See Section 2.3 of the XPath 1.0 specification for the behaviour of 'NCName:*' node tests.
2013-11-04xmerl: Look up unknown prefixes in xmlContext when matching attributesDaniel White
The core use case is a query where the original prefix in the scanned document is unknown (or varying). For example: xmerl_xpath:scan("//@ns:name", Doc, [{namespace, [{"ns", Uri}]}]) Previously, this would only return a result if the namespace prefix was an exact match.
2013-10-14Merge branch 'maint'Fredrik Gustafsson
2013-09-12Remove ^L characters hidden randomly in the code. Not those used in text ↵Pierre Fenoll
files as delimiters. While working on a tool that processes Erlang code and testing it against this repo, I found out about those little sneaky 0xff. I thought it may be of help to other people build such tools to remove non-conforming-to-standard characters.
2013-04-19Remove the "coding: utf-8" comment from all Erlang source filesHans Bolinder
2013-01-18Merge branch 'nox/enable-silent-rules/OTP-10726'Björn-Egil Dahlberg
* nox/enable-silent-rules/OTP-10726: Implement ./otp_build configure --enable-silent-rules
2013-01-15Implement ./otp_build configure --enable-silent-rulesAnthony Ramine
With silent rules, the output of make is less verbose and compilation warnings are easier to spot. Silent rules are disabled by default and can be disabled or enabled at will by make V=0 and make V=1.
2013-01-09Prepare OTP files for Unicode as default encodingHans Bolinder
2012-08-31Update copyright yearsBjörn-Egil Dahlberg
2012-06-05Update to work with whitespace in exec pathLukas Larsson
OTP-10106 OTP-10107
2012-04-23Fix continuation bug in parse_default_decl_1/2Lars Thorsen
2012-03-30Update copyright yearsBjörn-Egil Dahlberg
2012-03-28[xmerl] Fix bug for comments in XSD filesLars Thorsen
2012-03-28[xmerl] Fix error message and documentation bugLars Thorsen
2012-03-21Fix continuation errorLars Thorsen
2012-03-21Remove unused fileLars Thorsen
2012-01-04xmerl: Ignore unused variable in xmerl_uri.erlBjörn-Egil Dahlberg
2011-12-13[xmerl] Remove trailing blanksLars Thorsen
OTP-9821
2011-12-13[xmerl] Fix bug in namespace handling for attributesLars Thorsen
The uniqueness check of attributes failed when the namespace_conformant flag was set to true.
2011-12-09Update copyright yearsBjörn-Egil Dahlberg