Concept map editor: don't show 'hasType' predicate when assigning concepts
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@1782 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
parent
ecdaf8eb8e
commit
a7bd96600b
2 changed files with 11 additions and 5 deletions
|
@ -82,13 +82,15 @@ There are a few standard objects we can retrieve directly:
|
||||||
>>> typeConcept['id'], typeConcept['name']
|
>>> typeConcept['id'], typeConcept['name']
|
||||||
('0', u'type')
|
('0', u'type')
|
||||||
|
|
||||||
In addition we can get a list of all types and all predicates available:
|
In addition we can get a list of all types and all predicates available;
|
||||||
|
note that the 'hasType' predicate is not shown as it should not be
|
||||||
|
applied in a direct assignment.
|
||||||
|
|
||||||
>>> sorted(t['name'] for t in xrf.getConceptTypes())
|
>>> sorted(t['name'] for t in xrf.getConceptTypes())
|
||||||
[u'domain', u'file', u'note', u'person', u'predicate', u'query',
|
[u'domain', u'file', u'note', u'person', u'predicate', u'query',
|
||||||
u'textdocument', u'type']
|
u'textdocument', u'type']
|
||||||
>>> sorted(t['name'] for t in xrf.getPredicates())
|
>>> sorted(t['name'] for t in xrf.getPredicates())
|
||||||
[u'hasType', u'standard']
|
[u'standard']
|
||||||
|
|
||||||
We can also retrieve a certain object by its id or its name:
|
We can also retrieve a certain object by its id or its name:
|
||||||
|
|
||||||
|
|
|
@ -48,6 +48,10 @@ class LoopsMethods(MethodPublisher):
|
||||||
def concepts(self):
|
def concepts(self):
|
||||||
return self.context.getConceptManager()
|
return self.context.getConceptManager()
|
||||||
|
|
||||||
|
@Lazy
|
||||||
|
def typePredicate(self):
|
||||||
|
return self.concepts.getTypePredicate()
|
||||||
|
|
||||||
def getStartObject(self):
|
def getStartObject(self):
|
||||||
so = self.concepts.get('domain', self.concepts.getTypeConcept())
|
so = self.concepts.get('domain', self.concepts.getTypeConcept())
|
||||||
return self.getObjectWithChildren(so)
|
return self.getObjectWithChildren(so)
|
||||||
|
@ -62,21 +66,21 @@ class LoopsMethods(MethodPublisher):
|
||||||
return self.getObjectWithChildren(self.concepts.getDefaultPredicate())
|
return self.getObjectWithChildren(self.concepts.getDefaultPredicate())
|
||||||
|
|
||||||
def getTypePredicate(self):
|
def getTypePredicate(self):
|
||||||
return self.getObjectWithChildren(self.concepts.getTypePredicate())
|
return self.getObjectWithChildren(self.typePredicate)
|
||||||
|
|
||||||
def getTypeConcept(self):
|
def getTypeConcept(self):
|
||||||
return self.getObjectWithChildren(self.concepts.getTypeConcept())
|
return self.getObjectWithChildren(self.concepts.getTypeConcept())
|
||||||
|
|
||||||
def getConceptTypes(self):
|
def getConceptTypes(self):
|
||||||
tc = self.concepts.getTypeConcept()
|
tc = self.concepts.getTypeConcept()
|
||||||
types = tc.getChildren((self.concepts.getTypePredicate(),))
|
types = tc.getChildren((self.typePredicate,))
|
||||||
#types = [t for t in types if ITypeConcept(t).typeInterface ... ]
|
#types = [t for t in types if ITypeConcept(t).typeInterface ... ]
|
||||||
return [objectAsDict(t) for t in types]
|
return [objectAsDict(t) for t in types]
|
||||||
|
|
||||||
def getPredicates(self):
|
def getPredicates(self):
|
||||||
pt = self.concepts.getDefaultPredicate().conceptType
|
pt = self.concepts.getDefaultPredicate().conceptType
|
||||||
preds = pt.getChildren((self.concepts.getTypePredicate(),))
|
preds = pt.getChildren((self.concepts.getTypePredicate(),))
|
||||||
return [objectAsDict(p) for p in preds]
|
return [objectAsDict(p) for p in preds if p is not self.typePredicate]
|
||||||
|
|
||||||
def getChildren(self, id, predicates=[], child=''):
|
def getChildren(self, id, predicates=[], child=''):
|
||||||
obj = getObjectForUid(id)
|
obj = getObjectForUid(id)
|
||||||
|
|
Loading…
Add table
Reference in a new issue