[Biojava-l] Another API for vocabularies and KR

Matthew Pocock matthew_pocock@yahoo.co.uk
Tue, 02 Apr 2002 16:31:43 +0100


This is a multi-part message in MIME format.
--------------040102010409060103060201
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Hi.

I've finaly got some monograph code in some sort of shape. Sory for how 
slow this has been. It's very close to the proposal from Michael with 
differences as follows:

  * Not solely for structured vocabularies - can be used for other 
graphical data like database schemas, object models, frames or sematic 
networks.

  * Classes have different names - search/replace can fix this - I'd 
prefer to keep the names closer to that of graphs than of vocabularies.

  * Collections not iterators used (Michael says that he has no firm 
view about this).

  * The Visitor.Direction concept is expanded into the Link entities. 
These label the role of a node in a particular arc.

  * The constraints allow you to follow from an arc to a node with a 
namespace which tells you more about that relationship. It could give 
extra constraints, such as saying that a relation is 1-many. It could 
also be used to generate relationship types or instances from data, for 
example, auto-generating java beans from vocabulary types.

Anyway, I've attached source for some interfaces which you can use to 
build javadocs and classes. There's an in-memory and an SQL-backed 
implementation you can have if you ask nicely (I didn't want to send too 
big a file via e-mail).

Matthew

--------------040102010409060103060201
Content-Type: application/java-archive;
 name="namespace.jar"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="namespace.jar"

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
dyXeowVMaixXVdscJE8i5VZRXUhregNLfngMTlZlsRiQRp6fIJAvs9783DbffGF8Fz0WoV6W
DAmLUIybbUHflr7dXP+kX1BLBwirdhRaQgEAAFICAABQSwECFAAUAAgACAC0goIsAAAAAAIA
AAAAAAAACQAEAAAAAAAAAAAAAAAAAAAATUVUQS1JTkYv/soAAFBLAQIUABQACAAIALSCgiwE
Y4KMRAAAAEQAAAAUAAAAAAAAAAAAAAAAAD0AAABNRVRBLUlORi9NQU5JRkVTVC5NRlBLAQIU
ABQACAAIAOx8gix7XXx72wEAAJkEAAAgAAAAAAAAAAAAAAAAAMMAAABvcmcvbW9ub2dyYXBo
L25hbWVzcGFjZS9BcmMuamF2YVBLAQIUABQACAAIAO56gix+V9R9uQAAABABAAAqAAAAAAAA
AAAAAAAAAOwCAABvcmcvbW9ub2dyYXBoL25hbWVzcGFjZS9Eb2N1bWVudGF0aW9uLmphdmFQ
SwECFAAUAAgACAATe4Is1MIGItgAAAB1AQAAJwAAAAAAAAAAAAAAAAD9AwAAb3JnL21vbm9n
cmFwaC9uYW1lc3BhY2UvRG9jdW1lbnRlZC5qYXZhUEsBAhQAFAAIAAgALnyCLDjHJieAAQAA
2AIAACEAAAAAAAAAAAAAAAAAKgUAAG9yZy9tb25vZ3JhcGgvbmFtZXNwYWNlL0xpbmsuamF2
YVBLAQIUABQACAAIAD16gixBvFXwCAIAABcFAAAmAAAAAAAAAAAAAAAAAPkGAABvcmcvbW9u
b2dyYXBoL25hbWVzcGFjZS9OYW1lc3BhY2UuamF2YVBLAQIUABQACAAIAIF6dCzwUGrNmAAA
AH8BAAAvAAAAAAAAAAAAAAAAAFUJAABvcmcvbW9ub2dyYXBoL25hbWVzcGFjZS9OYW1lc3Bh
Y2VFeGNlcHRpb24uamF2YVBLAQIUABQACAAIAEh6giwNkHaungAAAPEAAAAtAAAAAAAAAAAA
AAAAAEoKAABvcmcvbW9ub2dyYXBoL25hbWVzcGFjZS9OYW1lc3BhY2VGYWN0b3J5LmphdmFQ
SwECFAAUAAgACADEfIIsVCjnp4gBAADsAgAAIQAAAAAAAAAAAAAAAABDCwAAb3JnL21vbm9n
cmFwaC9uYW1lc3BhY2UvTm9kZS5qYXZhUEsBAhQAFAAIAAgAh3iCLKt2FFpCAQAAUgIAACQA
AAAAAAAAAAAAAAAAGg0AAG9yZy9tb25vZ3JhcGgvbmFtZXNwYWNlL3BhY2thZ2UuaHRtbFBL
BQYAAAAACwALAHQDAACuDgAAAAA=
--------------040102010409060103060201--