Bool Tree::cmpQNamesForeign(const QName &q, const HashTable& dictForeign, const QName &qForeign) { /* printf("comparing names (%s,%s,%s) and (%s,%s,%s)\n", (char*)(((Tree*)this)->expand(q.getPrefix())), (char*)(((Tree*)this)->expand(q.getUri())), (char*)(((Tree*)this)->expand(q.getLocal())), (char*)(dictForeign.getKey(qForeign.getPrefix())), (char*)(dictForeign.getKey(qForeign.getUri())), (char*)(dictForeign.getKey(qForeign.getLocal())) ); */ if (q.getLocal() == stdPhrase(PHRASE_STAR)) { return (Bool)(q.getPrefix() == UNDEF_PHRASE || (dict().getKey(q.getUri()) == dictForeign.getKey(qForeign.getUri()))); } else { return (Bool) (dict().getKey(q.getUri()) == dictForeign.getKey(qForeign.getUri()) && dict().getKey(q.getLocal()) == dictForeign.getKey(qForeign.getLocal())); } }
Bool Tree::cmpQNameStrings(const QName &q, const Str& uri, const Str& local) { if (q.getLocal() == stdPhrase(PHRASE_STAR)) return (Bool)( q.getUri() == UNDEF_PHRASE || dict().getKey(q.getUri()) == uri); else { return (Bool) (dict().getKey(q.getUri()) == uri && dict().getKey(q.getLocal()) == local); } }
Bool Tree::cmpQNames(const QName &first, const QName &second) const { /* printf("comparing names (%s,%s,%s) and (%s,%s,%s)\n", (char*)(((Tree*)this)->expand(first.getPrefix())), (char*)(((Tree*)this)->expand(first.getUri())), (char*)(((Tree*)this)->expand(first.getLocal())), (char*)(((Tree*)this)->expand(second.getPrefix())), (char*)(((Tree*)this)->expand(second.getUri())), (char*)(((Tree*)this)->expand(second.getLocal())) ); */ if (first.getLocal() == stdPhrase(PHRASE_STAR)) return (Bool)(first.getPrefix() == UNDEF_PHRASE || first.getUri() == second.getUri()); else return (Bool) (first.getUri() == second.getUri() && first.getLocal() == second.getLocal()); }
void EQName::set(const QName& q, const HashTable& dict) { prefix = dict.getKey(q.getPrefix()); uri = dict.getKey(q.getUri()); local = dict.getKey(q.getLocal()); }
void Tree::expandQ(const QName& q, EQName& expanded) { expanded.setLocal(expand(q.getLocal())); expanded.setUri(expand(q.getUri())); expanded.setPrefix(expand(q.getPrefix())); }