Όπως και την παροχή των προμηθευτής-ανεξάρτητων μέσων, και XSets, η v1.0 προδιαγραφή SNIA XAM καθορίζει επίσης μια γλώσσα διατύπωσης ερωτήσεων (XAM QL), βασισμένο σε ένα υποσύνολο της γλώσσας SQL, για την επιλογή και την ανάκτηση του XUIDs XSets βασισμένου στα ικανοποιημένος-καθορισμένα κριτήρια.
Το σύνολο διατηρημένων λέξεων για αυτήν την γλώσσα διατύπωσης ερωτήσεων είναι αρκετά μικρό: επιλέξτε, όπου, και, ή, όχι, όπως, υπάρχει, τη δέσμευση, μόνο ανάγνωσης, typeof, μήκος, ημερομηνία, ΑΛΗΘΙΝΟΣ, ΨΕΥΤΙΚΗ, πριν από, αφότου, περιέχει, και μέσα. Από το σχέδιο, οι ερωτήσεις XAM μοιάζουν με μια επίλεκτη δήλωση SQL. Η γλώσσα διατύπωσης ερωτήσεων είναι μη διακρίνουσα κεφαλαία και μικρά και χρησιμοποιεί το χαρακτήρα ASCII - σύνολο.
Εδώ είναι ένα παράδειγμα μιας απλής ερώτησης XAM: επιλέξτε «.xset.xuid» όπου «com.example.name» = «Tuckers Plantation
Η έκδοση 1.0 της προδιαγραφής XAM καθορίζει δύο επίπεδα γλωσσικής υποστήριξης διατύπωσης ερωτήσεων, δηλ. επίπεδο 1 και επίπεδο 2. Το επίπεδο 1 καθορίζει τις ερωτήσεις στις ιδιότητες και τις ιδιότητες τομέων σε XSets και είναι υποχρεωτικό. Οποιαδήποτε αξία περιουσιακού στοιχείου XSet που είναι προσιτή σε ένα πρόγραμμα εφαρμογής μέσω της βιβλιοθήκης XAM μπορεί να ρωτηθεί. Το επίπεδο 2 επεκτείνει το επίπεδο 1 για να υποστηρίξει τις ερωτήσεις σε XStreams και είναι προαιρετικό. Και τα δύο επίπεδα ερώτησης προσεγγίζονται μέσω ενός ενιαίου, καθορισμένου τύπου εργασίας που όλοι οι προμηθευτές XAM πρέπει να υποστηρίξουν. Δεδομένου ότι κανένας προμηθευτής ότι γνωρίζω δεν έχει εφαρμόσει πραγματικά το επίπεδο 2 ερωτήσεις, το υπόλοιπο αυτής της θέσης στρέφει στο επίπεδο 1 τις ερωτήσεις.
Μια δήλωση ερώτησης XAM αποτελείται από μια υποχρεωτική επίλεκτη πρόταση που ακολουθείται από έναν προαιρετικό όπου πρόταση. Για XAM v1.0 η μόνη έγκυρη επίλεκτη πρόταση είναι επίλεκτο `.xset.xuid'. Αυτό διευκρινίζει ότι η εφαρμογή ζητά έναν κατάλογο τιμών XUID. Παραδείγματος χάριν επίλεκτο «.xset.xuid»
θα επιστρέψει έναν κατάλογο κάθε XSet που είναι αναγνώσιμο κατά την διάρκεια της ερώτησης.
Όπου η πρόταση χρησιμοποιείται για να διευκρινίσει ένα υποσύνολο XSets που αντιστοιχείται. Για το επίπεδο 1 οι ερωτήσεις αυτό είναι περιορισμένες στις συγκρίσεις μεταξύ των ιδιοτήτων XSet και των κυριολεκτικών ιδιοτήτων τιμών ή/και τομέων και των κυριολεκτικών τιμών. επιλέξτε «.xset.xuid» όπου «.xam.time.xuid» > ημερομηνία («2009-02-01T00: 00: 00.0 ")
θα επιστρέψει τον κατάλογο όλου του Xsets που δημιουργήθηκαν επάνω ή μετά από την 1η Φεβρουαρίου 2009.
Ο ακόλουθος πίνακας παρουσιάζει ποιοι τομέας και κυριολεκτικοί τύποι μπορούν να συγκριθούν εγκύρως. xam_intxam_doublexam_stringxam_datetimexam_xuid το INT ** διπλό ** string* datetime* XUID* η βιβλιοθήκη XAM επικυρώνει ότι οι σειρές και οι φιλελεύθεροι σειρών προσαρμόζονται utf-8 σειρές. Μη συμμορφούμενα utf-8 literals σειράς παράγουν ένα non-fatal λάθος σύνταξης ερώτησης XAM. Τα ζητήματα όπως οι ενιαίοι εναντίον πολλαπλάσιοι χαρακτήρες glyph και οι μη εκτυπώσιμοι χαρακτήρες είναι απροσδιόριστα και

























