XQuery API for Java
ஜாவாவுக்கான XQuery API (XQJ) என்பது W3C XQuery 1.0 விவரக்குறிப்புக்கான பொதுவான ஜாவா API ஐக் குறிக்கிறது. XQJ API ஜாவா புரோகிராமர்களுக்கு ஒரு XML தரவு மூலத்திற்கு எதிராக XQuery ஐ இயக்க உதவுகிறது (எ. கா. ஒரு எக்ஸ்எம்எல் தரவுத்தளம்) விற்பனையாளர் பூட்டுதலைக் குறைக்கும் போது அல்லது அகற்றும் போது. XQJ API ஜாவா டெவலப்பர்களுக்கு XQuery தரவு மாதிரிக்கு ஒரு இடைமுகத்தை வழங்குகிறது. அதன் வடிவமைப்பு ஒரு கிளையன்ட்/சர்வர் உணர்வைக் கொண்ட ஜே. டி. பி. சி ஏபிஐ போன்றது, மேலும் இது சர்வர் அடிப்படையிலான எக்ஸ்எம்எல் தரவுத்தளங்களுக்கு நன்கு கடன் கொடுக்கிறது மற்றும் கிளையன்ட் பக்க எக்ஸ்க்வேரி செயலிகளுக்கு குறைவாகவே உள்ளது, இருப்பினும் "இணைப்பு" பகுதி முழு ஏபிஐயின் மிகச் சிறிய பகுதியாகும். XQJ API இன் பயனர்கள் ஜாவா மதிப்புகளை XQuery வெளிப்பாடுகளுடன் பிணைக்கலாம், குறியீடு ஊசி தாக்குதல்களைத் தடுக்கலாம். மேலும், அணு பரிவர்த்தனையின் ஒரு பகுதியாக பல XQuery வெளிப்பாடுகள் செயல்படுத்தப்படலாம். வரலாறு மற்றும் செயல்படுத்தல் ஜாவாவுக்கான XQuery API ஜாவா சமூக செயல்முறையில் JSR 225 ஆக உருவாக்கப்பட்டது. இது ஆரக்கிள், ஐபிஎம், பி. இ. ஏ சிஸ்டம்ஸ், சாப்ட்வேர் ஏஜி, இன்டெல், நோக்கியா மற்றும் டேட்டாடைரெக்ட் போன்ற சில பெரிய தொழில்நுட்ப ஆதரவாளர்களைக் கொண்டிருந்தது. ஜாவா விவரக்குறிப்புக்கான XQuery API இன் பதிப்பு 1 ஜூன் 24,2009 அன்று வெளியிடப்பட்டது, ஜாவா டாக்ஸ், ஒரு குறிப்பு செயல்படுத்தல் மற்றும் ஒரு TCK (தொழில்நுட்ப இணக்கத்தன்மை கிட்) ஆகியவற்றுடன் செயல்படுத்தும் விற்பனையாளர்கள் இணங்க வேண்டும். XQJ வகுப்புகள் ஜாவா தொகுப்பில் உள்ளன javax.xml.xquery XQuery 3 அல்லது 3 க்கு ஆதரவை வழங்கும் XQJ இன் பதிப்பை உருவாக்க (புலப்படும்) செயல்பாடு எதுவும் இல்லை, எடுத்துக்காட்டாக செயல்பாடுகள், வரிசைகள் அல்லது வரைபடங்கள் போன்ற தரவு மாதிரியில் சேர்த்தல்களுக்கு ஜாவா பிணைப்புகளை வழங்குவதன் மூலம். செயல்பாடு XQJ பல செயல்பாடுகளை ஒரே பயன்பாட்டால் பயன்படுத்த அனுமதிக்கிறது. XQJ இணைப்புகள் XQuery வெளிப்பாடுகளை உருவாக்குவதற்கும் செயல்படுத்துவதற்கும் ஆதரவளிக்கின்றன. வெளிப்பாடுகள் புதுப்பிக்கப்படலாம் மற்றும் முழு உரை தேடல்களை உள்ளடக்கியிருக்கலாம். XQJ பின்வரும் வகுப்புகளில் ஒன்றைப் பயன்படுத்தி XQuery வெளிப்பாடுகளைக் குறிக்கிறதுஃ XQExpression-வெளிப்பாடு ஒவ்வொரு முறையும் XQuery செயலிக்கு அனுப்பப்படுகிறது. XQPreபயர்டு எக்ஸ்பிரஷன்-வெளிப்பாடு தற்காலிக சேமிப்பில் வைக்கப்பட்டுள்ளது மற்றும் செயல்படுத்தும் பாதை முன்கூட்டியே தீர்மானிக்கப்பட்டுள்ளது, இது திறமையான முறையில் பல முறை செயல்படுத்த அனுமதிக்கிறது. XQuery வெளிப்பாடுகள் XDM உருப்படிகளின் முடிவு வரிசையைத் தருகின்றன, அவை XQJ இல் XQResultSequense இடைமுகத்தின் மூலம் குறிப்பிடப்படுகின்றன. புரோகிராமர் ஒரு XQResultSequense ஐப் பயன்படுத்தி முடிவு வரிசையில் தனிப்பட்ட XDM உருப்படிகளின் மீது நடக்கலாம். வரிசையில் உள்ள ஒவ்வொரு உருப்படியும் அதனுடன் தொடர்புடைய எக்ஸ். டி. எம் வகை தகவல்களைக் கொண்டுள்ளது, அதாவது அதன் முனை வகை எ. கா. அல்லது, அல்லது போன்ற ஒரு எக்ஸ். டி. எம் அணு வகை. XQJ இல் உள்ள XDM வகை தகவல்களை XQItemType இடைமுகம் வழியாக மீட்டெடுக்க முடியும். atomic XQuery உருப்படிகளை getByte () மற்றும் getFloat () போன்ற XQItemAaccessor முறைகள் மூலம் ஜாவா பிரிமிடிவ்களுக்கு எளிதாக வார்ப்பிக்க முடியும். மேலும் XQuery உருப்படிகள் மற்றும் வரிசைகளை டிஓஎம், எஸ்ஏஎக்ஸ், ஸ்டேக்ஸ் மற்றும் பொதுவான ஐஓ மற்றும் வகுப்புகளுக்கு வரிசைப்படுத்தலாம். எடுத்துக்காட்டுகள் அடிப்படை எடுத்துக்காட்டு பின்வரும் எடுத்துக்காட்டு ஒரு XML தரவுத்தளத்துடன் ஒரு இணைப்பை உருவாக்கி, ஒரு XQuery வெளிப்பாட்டை சமர்ப்பித்து, பின்னர் முடிவுகளை ஜாவாவில் செயலாக்குவதை விளக்குகிறது. அனைத்து முடிவுகளும் செயலாக்கப்பட்டவுடன், அதனுடன் தொடர்புடைய அனைத்து வளங்களையும் விடுவிக்க இணைப்பு மூடப்படுகிறது. //ஒரு XML தரவுத்தளத்திற்கு ஒரு புதிய இணைப்பை உருவாக்குங்கள் XQConnection can = vendorDataSource.getConnection ("எனது பயனர்", "எனது கடவுச்சொல்"); XQExpress expr = conn.createExpression ();// மீண்டும் பயன்படுத்தக்கூடிய XQuery வெளிப்பாடு பொருள் XQResultSequance முடிவை உருவாக்குங்கள் = expr.executeQuery ("fn இல் $n க்குஃ சேகரிப்பு ('அட்டவணை')// உருப்படி" + "திரும்ப fn: தரவு ($n/பெயர்)");// ஒரு XQuery வெளிப்பாட்டை இயக்கவும்// முடிவு வரிசையை மீண்டும் மீண்டும் செயலாக்குங்கள் (result.next ()) இணைப்பு ஏற்கனவே உள்ளது என்று வைத்துக்கொள்வோம்ஃ XQExpress எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிரஷன் எக்ஸ்பிர இந்த வரைபட விதிகள் JAXB இல் காணப்படும் வரைபட விதிகளுடன் பெரும் ஒற்றுமையைக் கொண்டுள்ளன. XQuery வெளிப்பாடுகளில் வெளிப்புற மாறிகளுடன் ஜாவா மதிப்புகளை பிணைக்கும் போது இயல்புநிலை மேப்பிங் விதிகளை பின்வரும் அட்டவணை விளக்குகிறது. அறியப்பட்ட செயலாக்கங்கள் பூர்வீக எக்ஸ்எம்எல் தரவுத்தளங்கள் ஜாவா செயலாக்கங்களுக்கான எக்ஸ்க்வேரி ஏபிஐ கொண்டதாக அறியப்படும் பூர்வீக எக்ஸ்எம்எல் தரவுத்தளங்களின் பட்டியல் பின்வருமாறு. மார்க் லாஜிக் எக்ஸிஸ்ட் பேஸ்எக்ஸ் செட்னா ஆரக்கிள் எக்ஸ். டி. பி டாமினோ டைகர்லாஜிக் ரிலேஷனல் டேட்டாபேஸ்கள் டேட்டாடைரெக்ட் ரிலேஷனல் டேட்டாபேஸ்களுக்கான எக்ஸ். க்யூ. ஜே அடாப்டர்களை வழங்குகிறது, எக்ஸ். க்யூரி குறியீட்டை எஸ். க்யூ. எல் ஆக மொழிபெயர்க்கிறது, பின்னர் எஸ். க்யூ. எல் ரிசல்ட் செட்களை எக்ஸ். க்யூ. ஜே மேலும் செயலாக்க பொருத்தமான வடிவமாக மாற்றுகிறது. பின்வருபவை அறியப்பட்ட சில செயலாக்கங்கள் ஆகும். ஆரக்கிள் டிபி (எக்ஸ். டி. பி அல்ல) ஐபிஎம் டிபி2 மைக்ரோசாப்ட் எஸ். க்யூ. எல் சர்வர் சைபேஸ் ஏஎஸ்இ இன்ஃபார்மிக்ஸ் மைஎஸ்க்யூஎல் போஸ்ட்கிரேஎஸ்க்யூஎல் தரவுத்தளமற்ற செயலாக்கங்கள் பின்வருபவை தரவுத்தளமற்ற எக்ஸ்க்யூரி செயலிகளின் பட்டியல் ஆகும், அவை ஜாவா இடைமுகத்திற்கான எக்ஸ்க்யூரி ஏபிஐ-ஐ வழங்குகின்றன (பொதுவாக கோப்புப்பிரதியில் எக்ஸ்எம்எல்லில் இருந்து பகுப்பாய்வு செய்யப்பட்ட ஆவணங்களுக்கு எதிராக வினவலை அனுமதிக்கிறது, மேலும் நினைவகத்தில் டிஓஎம் அல்லது ஒத்த மரங்களாக வைக்கப்படுகிறது). சாக்சன் எக்ஸ்எஸ்எல்டி மற்றும் எக்ஸ்க்வேரி செயலி ஜோர்பா எம்எக்ஸ்க்வேரி ஆரக்கிள் எக்ஸ்க்வேரி செயலி உரிமம் விவரக்குறிப்பு "பதிப்புரிமை © 2003,2006-2009 ஆரக்கிள்" என்று குறிக்கப்பட்டுள்ளது. அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டுள்ளன ". இந்த விவரக்குறிப்பில் இரண்டு தனித்தனி உரிமங்கள் உள்ளனஃ ஒரு "விவரக்குறிப்பு உரிமம்" மற்றும் ஒரு "குறிப்பு செயல்படுத்தல் உரிமம்". பதிப்புரிமை அறிவிப்புகள் தக்கவைக்கப்பட்டிருந்தால் விவரக்குறிப்பை இலவசமாக நகலெடுக்க விவரக்குறிப்பு உரிமம் அனுமதிக்கிறது; இது முழு விவரக்குறிப்பையும் முழுமையாக செயல்படுத்துவதாகவும், எந்த இடைமுகங்களையும் மாற்றியமைக்கவோ நீட்டிக்கவோ இல்லை என்றும், பொருந்தக்கூடிய சோதனைகளில் தேர்ச்சி பெற்றதாகவும் இருந்தால், விவரக்குறிப்பின் செயல்பாட்டை உருவாக்குவதற்கும் விநியோகிக்கவும் உரிமத்தை வழங்குகிறது. இந்த விதி சில சர்ச்சைகளை ஏற்படுத்தியுள்ளது. முதலாவதாக, வெளியிடப்பட்ட விவரக்குறிப்பைச் செயல்படுத்துவதற்கு உரிமம் தேவை என்பது உலகளவில் ஏற்றுக்கொள்ளப்படவில்லை (அதாவது, உரிமம் இல்லாத நிலையில் பதிப்புரிமைச் சட்டம் இதை அனுமதிப்பதில்லை). இரண்டாவதாக, நீட்டிப்புகள் மற்றும் மாற்றங்களைச் செய்வதற்கான தடை காரணமாக, திறந்த மூல உரிமமாக தகுதி பெறுவதற்கான அளவுகோல்களை உரிமம் பூர்த்தி செய்யவில்லை (திறந்த மூல வரையறையைப் பார்க்கவும்). இது சில திறந்த மூல ஆர்வலர்களை XQJ செயல்படுத்தல்களை எப்போதாவது உண்மையான திறந்த மூலமாகக் கருத முடியுமா என்று சவால் செய்ய வழிவகுத்துள்ளது. குறிப்பு அமலாக்கத்திற்கான உரிமம் மிகவும் வழக்கமான பி. எஸ். டி-பாணி திறந்த மூல உரிமமாகும். குறிப்புகள் வெளிப்புற இணைப்புகள் ஜாவடோக் XQJ XQJ டுடோரியல் பில்டிங் பாலங்கள் ஜாவாவிலிருந்து XQuery, சார்லஸ் ஃபாஸ்டர் வரை. XML பிராக் 2012 (பிரீஸி விளக்கக்காட்சி) XQuery இன் ஜாவா ஒருங்கிணைப்பு, ஹான்ஸ்-ஜூர்கன் ரென்னாவ். XQJ ஸ்பிரிங் ஒருங்கிணைப்பு XQuery ஆதரவு XQS ஐப் பயன்படுத்தி பேலிஸேஜ் 2010 ஆர்பீயன் படிவங்கள்ஃ ஸ்காலாவிற்கான XQuery (XQJ இன் மேல் அமர்ந்திருக்கும்) இன்டெல்லிஜே XQuery ஆதரவு சொருகி ஜாவா API கள் ஜாவா விவரக்குறிப்பு XML தரவு அணுகல் XML தரவுத்தள API களுக்கான ஜாவா API ஐக் கோருகிறது