2014-09-09 1 views
1

saxon .NET API에 xsi 네임 스페이스에 대한 definiton을 추가하려고합니다.saxon .NET API를 사용하여 xsi 네임 스페이스에 definiton을 추가하는 방법

나는 이미 사용했다 - 그러나 이것은 도움이되지 않습니다 :이 Home Edition에서는 지원되지 않는 경우이며,

substring-before(substring-after(//IzdaniRacunEnostavni/@xsi:noNamespaceSchemaLocation,'http://www.gzs.si/e-poslovanje/sheme/')) 

을 그리고 :

Processor xmlProcessor = new Processor(); 
SchemaManager manager1 = xmlProcessor.SchemaManager; 
SchemaValidator validator = manager1.NewSchemaValidator(); 

DocumentBuilder builder = xmlProcessor.NewDocumentBuilder(); 
XdmNode xdmNode = builder.Build(xmlDocument); 
validator.SetSource(xdmNode); 
XPathCompiler compiler = xmlProcessor.NewXPathCompiler(); 

이 같은 XPath를 구문 분석이 필요 xpath 2.0을 완전히 지원하는 무료 외부 liubrari가 있습니까?

당신은 compiler.DeclareNamespace 방법을 사용해야합니다 :

답변

3

는 내 질문에 대한 해결책을 발견했다.

Processor xmlProcessor = new Processor(); 
    DocumentBuilder builder = xmlProcessor.NewDocumentBuilder(); 
    XdmNode xdmNode = builder.Build(xmlDocument); 
    XPathCompiler compiler = xmlProcessor.NewXPathCompiler(); 
    compiler.DeclareNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance"); 
관련 문제