मैं xpath का उपयोग करके एकाधिक फ़िल्टर को कार्यान्वित करने का प्रयास कर रहा हूं जैसे कि फ़िल्टर का आउटपुट सभी CompoundEmployee नोड्स हैं जिनमें निम्न हैं:

  • सभी job_information पहली घटना में employee_class EX के रूप में नहीं होना चाहिए

  • सभी job_information पहली घटना में 26 की तुलना में सभी events हो सकते हैं

  • event 26 तभी दिखाई दे सकता है जब last_modified_on = custom_date1

स्रोत xml है

<?xml version="1.0" encoding="utf-8"?> 
    <queryCompoundEmployeeResponse> 
        <CompoundEmployee> 
            <person> 
                <employment_information> 
                    <job_information> 
                        <employee_class>WC</employee_class> 
                        <event>26</event> 
                        <event_reason>FUNDBREA</event_reason> 
                        <last_modified_on>20170215</last_modified_on> 
                        <custom_date1>20170215</custom_date1> 
                    </job_information> 
                </employment_information> 
            </person> 
       </CompoundEmployee> 
  </queryCompoundEmployeeResponse>

मैं जिस xpath फ़िल्टर का उपयोग कर रहा हूं वह है

/queryCompoundEmployeeResponse/CompoundEmployee[person/emplo‌​yment_information/jo‌​b_information[1]/emp‌​loyee_class!='EX' and (person/employment_information/job_information[1]/event='26' and person/employment_information/job_information[1]/last_modifi‌​ed_on=person/employm‌​ent_information/job_‌​information[1]/custo‌​m_date1) ]

मुझे रनटाइम के दौरान एक त्रुटि मिल रही है।

क्या आप इसमें मेरी मदद कर सकते हैं।

धन्यवाद, विक्की

1
Vicky 15 फरवरी 2017, 14:24
कृपया अपने कोड को टेक्स्ट के रूप में चिपकाने पर विचार करें meta.stackoverflow.com/questions/285551/…
 – 
user5226582
15 फरवरी 2017, 14:26
मैंने कोशिश की लेकिन पोस्ट के दौरान त्रुटि हो रही थी
 – 
Vicky
15 फरवरी 2017, 14:28
मैं जिस XPATH का उपयोग कर रहा हूं /queryCompoundEmployeeResponse/CompoundEmployee[person/Employment_information/job_information[1]/employee_class!='EX' and (person/ Employment_information/job_information[1]/event='26' and person/Employment_information/job_information[1]) /last_modified_on=व्यक्ति/रोजगार_सूचना/नौकरी_सूचना[1]/custom_date1)]
 – 
Vicky
15 फरवरी 2017, 14:30
एक्सएमएल - <कंपाउंड कर्मचारी> <व्यक्ति> <रोजगार_सूचना> <कर्मचारी_वर्ग>डब्ल्यूसी <घटना>26 FUNDBREA 20170215 20170215
 – 
Vicky
15 फरवरी 2017, 14:31

1 उत्तर

सबसे बढ़िया उत्तर

नीचे प्रयास करें और मुझे परिणाम बताएं:

//CompoundEmployee[person[employment_information[job_information[not(employee_class="EX")][not(event="26") or last_modified_on=custom_date1]]]]

उपरोक्त अभिव्यक्ति वापस आनी चाहिए

CompoundEmployee नोड

  • जिसमें person शामिल है

    • जिसमें employment_information

      शामिल है <उल>
    • जिसमें job_information

      शामिल है <उल>
    • साथ में employee_class!=EX

    • और event!=26

    • लेकिन अगर last_modified_on==custom_date1, तो event==26 भी स्वीकार्य है

1
Andersson 15 फरवरी 2017, 15:13