| Server IP : 217.160.0.135 / Your IP : 216.73.217.37 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1074145052 ( 1074145052) PHP Version : 8.3.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/emacs/28.2/lisp/nxml/ |
Upload File : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\207" [require nxml-util nxml-parse rng-parse rng-uri rng-util xmltok] 2)
#@88 Filename of schema being used for current buffer.
It is nil if using a vacuous schema.
(defvar rng-current-schema-file-name nil (#$ . 244))
(make-variable-buffer-local 'rng-current-schema-file-name)
#@57 Default value for variable `rng-schema-locating-files'.
(defvar rng-schema-locating-files-default (byte-code "\301\302\303\"D\207" [data-directory "schemas.xml" expand-file-name "schema/schemas.xml"] 4) (#$ . 449))
#@51 File containing schema for schema locating files.
(defvar rng-schema-locating-file-schema-file (expand-file-name "schema/locate.rnc" data-directory) (#$ . 671))
#@60 Schema for schema locating files or nil if not yet loaded.
(defvar rng-schema-locating-file-schema nil (#$ . 838))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable rng-schema-locating-files funcall function #[0 "\207" [rng-schema-locating-files-default] 1 ""] "List of schema locating files." :type (repeat file) :group relax-ng] 8)
#@56 Alist of schema extensions vs schema loader functions.
(defvar rng-schema-loader-alist '(("rnc" . rng-c-load-schema)) (#$ . 1216))
(defvar rng-cached-document-element nil)
(defvar rng-document-type-history nil)
#@16
(fn TYPE-ID)
(defalias 'rng-set-document-type #[257 "\3001% \211\301\230?\205# \302!\211\204 \303\304\"\210\305!\266\306\307\"\210\310 0\207\311!\207" [(nxml-file-parse-error) "" rng-locate-schema-file error "Could not locate schema for type id `%s'" rng-set-schema-file-1 rng-save-schema-location-1 t rng-what-schema nxml-display-file-parse-error] 5 (#$ . 1433) (byte-code "\300 C\207" [rng-read-type-id] 1)])
(defalias 'rng-read-type-id #[0 "\3011 \302 \303\304\305\306\307\"\303\310\303\311&)\2620\207\312!\207" [completion-ignore-case (nxml-file-parse-error) rng-possible-type-ids nil completing-read "Document type id: " mapcar #[257 "\211C\207" [] 2 "\n\n(fn X)"] t rng-document-type-history nxml-display-file-parse-error] 8])
#@491 Set the schema for the current buffer to the schema in FILENAME.
FILENAME must be the name of a file containing a schema.
The extension of FILENAME is used to determine what kind of schema it
is. The variable `rng-schema-loader-alist' maps from schema
extensions to schema loader functions. The function
`rng-c-load-schema' is the loader for RELAX NG compact syntax. The
association is between the buffer and the schema: the association is
lost when the buffer is killed.
(fn FILENAME)
(defalias 'rng-set-schema-file #[257 "\3001
\301!\210\302\303!0\207\304!\207" [(nxml-file-parse-error) rng-set-schema-file-1 rng-save-schema-location-1 t nxml-display-file-parse-error] 4 (#$ . 2188) "fSchema file: "])
#@69 Set the schema for the current buffer to allow any well-formed XML.
(defalias 'rng-set-vacuous-schema #[0 "\300\301!\210\302 \207" [rng-set-schema-file-1 nil rng-what-schema] 2 (#$ . 2905) nil])
#@17
(fn FILENAME)
(defalias 'rng-set-schema-file-1 #[257 "\211\205 \303!\262\211\203 \304!\202 \211\305\306!\207" [rng-any-element rng-current-schema rng-current-schema-file-name expand-file-name rng-load-schema run-hooks rng-schema-change-hook] 3 (#$ . 3106)])
#@17
(fn FILENAME)
(defalias 'rng-load-schema #[257 "\301!\302\"A\211\204 \203 \303\304\"\210\202 \303\305!\210\211!\207" [rng-schema-loader-alist file-name-extension assoc error "No schema loader available for file extension `%s'" "No schema loader available for null file extension"] 6 (#$ . 3381)])
#@68 Display a message saying what schema `rng-validate-mode' is using.
(defalias 'rng-what-schema #[0 "\203 \301\302\303!\"\207\301\304!\207" [rng-current-schema-file-name message "Using schema %s" abbreviate-file-name "Using vacuous schema"] 4 (#$ . 3695) nil])
#@111 Set the schema for this buffer based on the buffer's contents and file-name.
(fn &optional NO-DISPLAY-ERROR)
(defalias 'rng-auto-set-schema #[256 "\3001
\301\302 !\210\303 0\207\203 \304\305\3068\3078\310A@!$\207\311!\207" [(nxml-file-parse-error) rng-set-schema-file-1 rng-locate-schema-file rng-what-schema error "%s at position %s in %s" 3 2 abbreviate-file-name nxml-display-file-parse-error] 8 (#$ . 3964) nil])
#@197 Return the file-name of the schema to use for the current buffer.
Return nil if no schema could be located.
If TYPE-ID is non-nil, then locate the schema for this TYPE-ID.
(fn &optional TYPE-ID)
(defalias 'rng-locate-schema-file #[256 "\302\211\203 \211C\202 \303 !\302\211:\203E \262@\262\302\262\235\203* \304\305\"\210B\262\203 \204 \306@\"\262A\262\202/ \205L \307!)\207" [rng-cached-document-element rng-schema-locating-files nil rng-locate-schema-file-using error "Type-id loop for type-id `%s'" rng-locate-schema-file-from-type-id rng-uri-file-name] 7 (#$ . 4396)])
#@38 Return a list of the known type IDs.
(defalias 'rng-possible-type-ids #[0 "\301\203 \302@\"\262A\262\202 \303\304\305\"!\207" [rng-schema-locating-files nil rng-possible-type-ids-using seq-uniq sort string<] 6 (#$ . 5002)])
#@172 Locate a schema using the schema locating files FILES.
FILES is a list of file-names.
Return either a URI, a list (TYPE-ID) where TYPE-ID is a string,
or nil.
(fn FILES)
(defalias 'rng-locate-schema-file-using #[257 "\300\211\211\204 \203 \301@!\262A\262\202 \203\270 \211\203$ \203\270 @\211@\211\302NA\262\211\203R \203= >\203C \211A!\262\303>G\"\262\266\202 \304\267\202\225 \204\263 \305A\236A\211\203w \306!\211\262>\204w C\244\262\266\202 \307A\236A\211\203\220 \310\301\311!!\"\262\266\202 \211\203\263 \203\243 >\203\251 \211A!\262\303>G\"\262\266\202 \207" [nil rng-get-parsed-schema-locating-file rng-rule-matcher nbutlast #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (applyFollowingRules 88 include 124)) ruleType intern rules append rng-uri-file-name] 12 (#$ . 5243)])
(byte-code "\300\301\302\303#\210\300\304\302\305#\210\300\306\302\307#\210\300\310\302\311#\210\300\312\302\313#\207" [put documentElement rng-rule-matcher rng-match-document-element-rule namespace rng-match-namespace-rule uri rng-match-uri-rule transformURI rng-match-transform-uri-rule default rng-match-default-rule] 4)
#@14
(fn PROPS)
(defalias 'rng-match-document-element-rule #[257 "\300 \301\236A\302\236A\203$ G\303U\203 A@?\202! A@\230\2053 \211\2030 \211\3048\230\2053 \305!\207" [rng-document-element prefix localName 0 2 rng-match-default-rule] 7 (#$ . 6452)])
#@14
(fn PROPS)
(defalias 'rng-match-namespace-rule #[257 "\300 \301\236A\205! \211\205! @\302\230?\205 \303!=\205! \304!\207" [rng-document-element ns "" nxml-make-namespace rng-match-default-rule] 6 (#$ . 6715)])
#@113 Return a list (NS PREFIX LOCAL-NAME).
NS is t if the document has a non-nil, but not otherwise known namespace.
(defalias 'rng-document-element #[0 "\2069 \212\214~\210eb\210\306\211\306\211\211\211\211\211\211
\307 \210\310 \210\311>\2055 \312 \313 \314 E.\211\207" [rng-cached-document-element xmltok-dtd xmltok-errors xmltok-namespace-attributes xmltok-attributes xmltok-replacement nil xmltok-forward-prolog xmltok-forward (start-tag partial-start-tag empty-element partial-empty-element) rng-get-start-tag-namespace xmltok-start-tag-prefix xmltok-start-tag-local-name xmltok-name-end xmltok-name-colon xmltok-start xmltok-type] 9 (#$ . 6941)])
(defalias 'rng-get-start-tag-namespace #[0 "\301 \302\211\211\203>