| |
2-26 Bibliographischer FragencService, v1.0 Mai 2002 2 Die folgenden Richtlinien beschreiben, wie man diese Methode verwendet. Die Richtlinien werden nur wenn angewendet die verwendete Abfragesprache ist von der Art OMG_CLQuery De ned wie: Schnittstelle OMG_CLQuery: CosQuery::QueryLanguageType { }; 1. Es bringt ein BibRefCollection zurück Art. 2. Die Parameter- Frage enthält eine Frage in der OMG-Begrenzungssprache, wie innen definiert [ OMG_CL ]. Ein QueryInvalid Ausnahme wird angehoben, wenn die Fragensyntax oder -semantik ist falsch. 3. Die Params eine Eigenschaft enthalten, die können Kriterien genannt wird, mit einem Fall von DsLSRControlledVocabularies::VocabularyStringList, das eine Liste von enthält Kriteriumsnamen und eine Eigenschaft genannt ausgeschlossen mit einem Fall von AttributeList . Die Implementierung verwendet diese Parameter, genauso wie beschrieben durch Methoden- find() über, außer daß die geänderten Kriterien werden nicht zurück zurückgebracht. 2,2,8,4 Frage durch SQL und OQL Einige komplizierte Fragen können weder durch direkte Methoden noch durch das OMG erzielt werden BegrenzungscSprache. Z.B. sind die Resultate immer Listen von BibliographicReference s. Man kann nicht Fragen stellen wie, was Journale innen zitiert werden dieser Behälter? 1 . Folglich erlaubt diese Spezifikation den Gebrauch von dem evaluate() Methode von CosQuery ohne die Beschränkungen oben beschrieben, aber, andere Regeln anwendend: 1. Eine Implementierung ist noch compliant, wenn sie nur das OMG_CLQuery stützt Art. Sie kann eine Ausnahme QueryTypeInvalid aufwerfen wenn eine andere Art benutzt wird. 2. Sql- und OQL-Fragen sind interoperable, nur wenn Fragenzeichenketten stringified enthalten Attributnamen (wie im Attribut des Abschnitts 2,2,2, einfaches beschrieben und qualifizierten Namen, auf Seite 2-13) und table-/classnamen gleich den Kategoriennamen verwendet diesbezüglich Spezifikation. Merken Sie, daß dieses durchaus eine ernste Beschränkung ist. Z.B. erlaubt es nicht Verbrauch von fremde Schlüssel oder verbindene Tabellen verbanden mit many-to-many-relationships. Merken Sie, daß einige Implementierungen diese Spezifikation mit der vollen SQL-Frage noch verwenden können Fähigkeiten, wenn sie ihr Datenmodell herausstellen (in den Unterlagen, z.B.). Jedoch solche Implementierungen sind selten interoperable. 1. Theoretisch können Sie es tun: Bitten Sie um alle Zitieren der Art JournalArticle, nimmt dann nur Werte eines Attributfrom_journal, bilden es einzigartig, und Sie haben eine Liste von vorhandenem Journale. Aber in der Praxis wirft diese Art der Frage vermutlich eine Ausnahme LimitExceeded auf . |  |
|
| |
|
|