Sample: MemParse

| MemParse |
| MemParse uses the SAX Parser to parse a memory buffer containing XML statements, and reports the number of elements and attributes found.
| Running MemParse |
| This program uses the SAX Parser to parse a memory buffer containing XML statements, and reports the number of elements and attributes found. The following parameters may be set from the command line
    Usage:
        MemParse [options]

    This program uses the SAX Parser to parse a memory buffer
    containing XML statements, and reports the number of
    elements and attributes found.

    Options:
        -v=xxx      Validation scheme [always | never | auto*].
        -n          Enable namespace processing. Defaults to off.
        -s          Enable schema processing. Defaults to off.
        -f          Enable full schema constraint checking. Defaults to off.
        -?          Show this help.

      * = Default if not provided explicitly.
-v=always will force validation -v=never will not use any validation -v=auto will validate if a DOCTYPE declaration or a schema declaration is present in the XML document Here is a sample output from MemParse
    MemParse -v=always
The output is the following:
    Finished parsing the memory buffer containing the following XML statements:

    <?xml version='1.0' encoding='ascii'?>
    <!DOCTYPE company [
    <!ELEMENT company     (product,category,developedAt)>
    <!ELEMENT product     (#PCDATA)>
    <!ELEMENT category    (#PCDATA)>
    <!ATTLIST category idea CDATA #IMPLIED>
    <!ELEMENT developedAt (#PCDATA)>
    ]>

    <company>
      <product>XML4C</product>
      <category idea='great'>XML Parsing Tools</category>
      <developedAt>
        IBM Center for Java Technology, Silicon Valley, Cupertino, CA
      </developedAt>
    </company>

    Parsing took 10 ms (4 elements, 1 attributes, 16 spaces, 95 characters).
Running MemParse with the validating parser gives a different result because ignorable white-space is counted separately from regular characters.
    MemParse -v=never
The output is the following:
    Finished parsing the memory buffer containing the following XML statements:

    <?xml version='1.0' encoding='ascii'?>
    <!DOCTYPE company [
    <!ELEMENT company     (product,category,developedAt)>
    <!ELEMENT product     (#PCDATA)>
    <!ELEMENT category    (#PCDATA)>
    <!ATTLIST category idea CDATA #IMPLIED>
    <!ELEMENT developedAt (#PCDATA)>
    ]>

    <company>
      <product>XML4C</product>
      <category idea='great'>XML Parsing Tools</category>
      <developedAt>
        IBM Center for Java Technology, Silicon Valley, Cupertino, CA
      </developedAt>
    </company>

    Parsing took 10 ms (4 elements, 1 attributes, 0 spaces, 111 characters).
Note that the sum of spaces and characters in both versions is the same.
| The time reported by the system may be different, depending on your processor speed.

Copyright © 1999-2017 The Apache Software Foundation. All Rights Reserved.