2012-07-12 2 views
1

현재 외부 변수를 통해 주요 xql 파일에 2 개의 데이터베이스 이름을 제공하고 있습니다. 이 값들을 내 XQL 모듈 중 하나에 전달하고 싶습니다.Xquery 모듈에 메인 스크립트의 전역 변수를 어떻게 공급할 수 있습니까?

예를 들어, 나는 모듈 "MYLIB"

 import module namespace mylib = "http://example.org/mylib" at "myLib.xqm"; 

    declare variable $dbName external; 

    $mylib:print() 

가 그럼 난 DBNAME 외부 변수로 주요 스크립트를 먹이를 가져 오는 주요 스크립트를 가질 수있다, 그것은 작동하지만, 난 내 모듈에 어떻게든지 전달할 싶습니다

 module namespace mylib = "http://example.org/mylib"; 

    declare variable $mylib:dbName external; 

    declare function mymod:print() as xs:string { 
     $mymod:dbName 
    }; 

어떻게이 module's 인스턴스 $의 MYLIB 로컬 DBNAME의 값에 바인딩 할 수 있습니다 : DBNAME을 ??

  • 모듈에서 같은 변수를 선언하고 선언 같은과 주요 클래스를 할당하려고

    • 글로벌 주요 파일에 변수를 만드는, 그래서 그들은 가져온 모듈에 의해 읽을 수 있습니다 :

      나는 시도 변수 $ MYLIB : DBNAME : 외부로 = $ DBNAME

    • 선언 고유 모듈은 내 주요 스크립트에 그들로부터 값을 가져 오기 및

    거기에서 그것을 읽으려고 바르 이것에 대한 명백하게 쉬운 해결책 ?? 아니면 모든 모듈에 동일한 값을 정적으로 정의해야합니까?

  • 답변

    0

    왜 함수에 인수로 전달하지 않습니까?

    mymod:print($dbname) 
    
    +0

    모든 methdods에 전달해야하고 내가 내부 정적 VAR과 같은 몇 가지 szncroniyatioon을 좋아하면 나는 easz의 WAZ가 있는지 궁금 speciallz하고 있기 때문에 – Whimusical

    관련 문제