38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Summary: Provide Canonical XML and Exclusive XML Canonicalization
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Description: the c14n modules provides a
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * "Canonical XML" implementation
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * "Exclusive XML Canonicalization" implementation
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Copy: See Copyright for the status of this software.
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Author: Aleksey Sanin <aleksey@aleksey.com>
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsyncextern "C" {
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* __cplusplus */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * XML Canonicazation
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Exclusive XML Canonicazation
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * Canonical form of an XML document could be created if and only if
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * a) default attributes (if any) are added to all nodes
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * b) all character and parsed entity references are resolved
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * In order to achive this in libxml2 the document MUST be loaded with
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * following global setings:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlSubstituteEntitiesDefault(1);
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * or corresponding parser context setting:
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * xmlParserCtxtPtr ctxt;
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * ctxt->loadsubset = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * ctxt->replaceEntities = 1;
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync const char* filename,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync * This is the core C14N function
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsynctypedef int (*xmlC14NIsVisibleCallback) (void* user_data,
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* __cplusplus */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_OUTPUT_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* LIBXML_C14N_ENABLED */
38ae7e4efe803ea78b6499cd05a394db32623e41vboxsync#endif /* __XML_C14N_H__ */