Discussions on Compound Value Types
Start a New Discussion
-
-
-
Thanks - that did exactly what I was trying to do.
-
fyi, we're trying to move away from the use of the word 'mediator' and just use 'compound value type' -- in the hopes that people will be less confused. To get technical, a mediator is a compound value type that connects two or more types -- whereas you can also have a terminal compound value type that connects a type to a collection of literal values... but this distinction is something that likely will only confuse people more... thus, we like to just call 'em CVTs.
-
-
-
I'm trying to set up a mediator - and it seems to be part of the functionality of compound types, or am I just getting confused here.
I'd like to set up a type to hold the relationship between two adjoining rail stations, much like the Adjoining Relationship used by the Adjoins property of a Location, except I want to speciy the Rail Line that links the two stations as well.
I can work out how to create the type, but in order to link two stations I have to go into the mediator type and add the second one in manually. Is there a way to easily create the reciproated link so that when I am in station1 and add station2 as an Adjacent Station station1 will appear in the Adjacent Station list for station2 as well?
Thanks.-
The simplest way to do this is with the "suggested properties" feature on the type definition page.
For example, you could create the "Station" type, then the "Adjoining Relationship" type. Then add an "adjoins" property to Station with an expected type of Adjoining Relationship. Now click through to the Adjoining Relationship type definition page. There should be a property under "Suggested Properties" whose expected type is Station. Double click it to give it a name, and your reciprocal property should be all set.
-
-
-
When I first started using Compound Value Types, some 4 weeks ago, they were handled by Freebase as described above. I.e.(1) you would be prompted for as many properties as they were declared to have when you wanted to create a new one, and (2) they didn't have a user-supplied display name. Unless I'm doing something different now, both aspects seem to have changed. When I now want to create a new one, Freebase prompts me for only one entry, rather than one per property. This is then taken as the display name (rather than the obscure GUID used previously). You can then provide values for the n properties for one instance of this CVT, and indeed edit its display name, just as you can for any topic.
Am I indeed right in thinking that there has been a change in the way CVTs are handled, or am I just doing something different? If the former, then this should be reflected in the documentation.
-
-
-
By your own admission, " Setting up a compound value type is currently a bit complicated. " Yet you only give three steps for creating a compound value type, the third of which is not actually a step at all. Could we please have a fully-detailed listing of the steps involved, perhaps using the 'Performance' compound value type as an example.
-
Robert, you make some good points. I've made some quick edits to this content, which I hope will help. This posting on the developer blog is also an important read. We'll continue to improve our help content. Thanks for the note.
-
Thanks, Dan, for expanding so quickly the description of the steps to follow. I have now succeeded in setting up a Compound Value Type.
I have documented in even more detail the steps I followed for my own requirement, in the Description for robertm's Type 'Variable with Units'. This is for my own future reference, but may be of value to others starting off.
-
Although they appear in Type Editor, the suggested properties shouldn't have any impact when viewing topics of that type unless you reciprocate them by naming them - you can ignore them and they won't appear when viewing topics of that type. To answer your question about the order, they are displayed in reverse timestamp order - so the most recently added incoming links appear at the top.
-