/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 9 ĠRe ece ĠH . ĠD un n Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġuk . co . re ec ed un n . intellij . plugin . sax on . query . s 9 api . binding Ċ Ċ import Ġuk . co . re ec ed un n . intellij . plugin . xd m . types . Xs QName Value Ċ Ċ open Ġclass ĠQName ( val Ġ` object `: ĠAny , Ġval Ġs ax on Class : ĠClass <* >) Ġ{ ĊĠĠĠ Ġopen Ġfun Ġget Namespace URI (): ĠString Ġ= Ġs ax on Class . getMethod (" getName space URI "). invoke (` object `) Ġas ĠString ĊĊĠĠĠ Ġfun Ġget Prefix (): ĠString Ġ= Ġs ax on Class . getMethod (" get Prefix "). invoke (` object `) Ġas ĠString ĊĊĠĠĠ Ġopen Ġfun Ġget Local Name (): ĠString Ġ= Ġs ax on Class . getMethod (" getLocal Name "). invoke (` object `) Ġas ĠString ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ= Ġ` object `. toString () Ċ } Ċ Ċ fun ĠX s QName Value . to QName ( class Loader : ĠClassLoader ): ĠQName Ġ{ ĊĠĠĠ Ġval Ġq name Class Ġ= Ġclass Loader . load Class (" net . sf . sax on . s 9 api . QName ") ĊĠĠĠ Ġval Ġstring Class Ġ= ĠString :: class . java ĊĠĠĠ Ġval Ġ` object ` Ġ= Ġwhen Ġ{ ĊĠĠĠĠĠĠĠ Ġnamespace Ġ== Ġnull Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconstructor Ġ= Ġq name Class . get Constructor ( string Class ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconstructor . newInstance ( local Name !!. data ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprefix Ġ== Ġnull Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconstructor Ġ= Ġq name Class . get Constructor ( string Class , Ġstring Class ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconstructor . newInstance ( namespace !!. data , Ġlocal Name !!. data ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconstructor Ġ= Ġq name Class . get Constructor ( string Class , Ġstring Class , Ġstring Class ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconstructor . newInstance ( prefix !!. data , Ġnamespace !!. data , Ġlocal Name !!. data ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn ĠQName (` object `, Ġq name Class ) Ċ } Ċ Ċ val ĠSAX ON _ NAMES P ACES : ĠMap < String , ĠString > Ġ= Ġmap Of ( ĊĠĠĠ Ġ// ĠX Query Ġ 1 . 0 ĊĠĠĠ Ġ" xml " Ġto Ġ" http :// www . w 3 . org / XML / 1 9 9 8 / namespace ", ĊĠĠĠ Ġ" xs " Ġto Ġ" http :// www . w 3 . org / 2 0 0 1 / XMLSchema ", ĊĠĠĠ Ġ" xsi " Ġto Ġ" http :// www . w 3 . org / 2 0 0 1 / XMLSchema - instance ", ĊĠĠĠ Ġ" fn " Ġto Ġ" http :// www . w 3 . org / 2 0 0 5 / xpath - functions ", ĊĠĠĠ Ġ" local " Ġto Ġ" http :// www . w 3 . org / 2 0 0 5 / x query - local - functions ", ĊĠĠĠ Ġ// ĠX Query Ġ 3 . 0 ĊĠĠĠ Ġ" math " Ġto Ġ" http :// www . w 3 . org / 2 0 0 5 / xpath - functions / math ", ĊĠĠĠ Ġ// ĠX Query Ġ 3 . 1 ĊĠĠĠ Ġ" map " Ġto Ġ" http :// www . w 3 . org / 2 0 0 5 / xpath - functions / map ", ĊĠĠĠ Ġ" array " Ġto Ġ" http :// www . w 3 . org / 2 0 0 5 / xpath - functions / array " Ċ ) Ċ