Discussions on Fictional Object
Start a New Discussion
-
-
I have a couple questions about the fictional object type. First of all, should this type be used to indicate fictional objects that there are more than one of, or objects that are common in a specific fictional universe? To me it sounds like this type is meant to be used for specific fictional objects (The Ring of Power, The Death Star), rather than general fictional objects (Catapult, Lightsaber). Is this true? If it is, is there any chance you could create a "Fictional Object Type" type? I could make one myself and just use it in my base, but it seems to me that this would be something better suited for the commons.
Thank you for reading, Ajedi32
-
I believe your interpretation of the intent of the fictional object type is correct. Adding an additional type (although it would probably be called something like "fictional object category" type to avoid the "type type" nomenclature) sounds like a reasonable request (although I'm not an admin for this area, so can't help directly).
If you create it in your own base and start using it, it would help your figure out what the appropriate properties are, etc, and then it could be "promoted" to the commons later, preserving the work you did.
-
Okay, thanks. I don't own any bases general enough to hold this type, so I'll just put it in my drafts for now. Too bad I can't give it any return links from the objects in the commons. =/
Anyway, here's the link. http://www.freebase.com/schema/user/ajedi32/default_domain/fictional_object_class
If anyone has any suggestions for the type please feel free to tell me about them. =)
-
Hmm... it seems that there are a lot of properties of the "Fictional Object Class" type I created are the same as the properties of the "Fictional Object" type. Should these be delegated properties? =/ The properties and their names are almost identical. On the other hand, wouldn't the object class type hold be the one to master properties rather than the object type? And why would an entity be both a fictional object AND a fictional object class?
Any ideas?
-
A fictional object is not a class of fictional things, I thought the description and examples quite clear (was there something that made it questionable?).
You should consider adding a property to assert what category a fictional class of objects are: Star Destroyer is a fictional class of fictional spaceships. This would allow us to remove the incorrect typing as a fictional object from the topic of star destroyer.
Finally, you might consider moving your type into a base (fictional universal additions?), no one will be able to add, see or use your type otherwise.
-
IMO, the fact that there are so many mistyped examples in there shows that there's something not clear about the usage. At a very quick glance, most of them seem to be coming from the fictional objects property on the fictional universe type, rather than direct typings as a fictional object. People there won't read the type description after all.
-
What made the intentions of that type questionable for me was that it was being used by other people to indicate classes of objects, and that there was no Object Class type that could be used instead.
So what you're saying is that you think 'Subclasses' and 'Subclass of' properties would be a good idea?
And no problem, I'll move the type to a base. Before I do though, I want to know what you guys think of my previous question (two above this one). If people start using the type and we decide we need to change those properties later, a lot of data could be lost. I don't think we need the properties to be delegated since I don't think a topic can be both a fictional object and a fictional object class at the same time, but I want to know what you guys think before I start using the type.
-
The properties could be delegated, but is unnecessary IMO. Simply moving a user-created type such as your fictional class that uses as expected types for its properties commons types, fictional object and fictional universe, these associations will not be changed and the data will not be lost in such a move (since move is a bit of a misnomer, what happens is that a new linkage is created between the fictional universe namespace and your type and the old one, currently /user/ajedi32/default_domain/ will be depreciated, but not destroyed).
My very wise coworker thinks it should be a three-way (or triangular) pattern: Object <-> Class <-> ?Classification? <-> Object
Narya <-> Three Rings <-> Ring <-> Narya
We are unsure what would be the best term for what kind of classification the class should be.
-
Okay I didn't think they would have to be delegated properties, I just wanted to make sure because as far as I know there isn't a way to convert a delegated property into a master property (or vice-versa). I wasn't saying that moving the type would cause data loss, I was more concerned about whether we would have to change the properties to delegated ones at some point in the future. (Just checking.)
So you're saying that I should create a separate type for kinds of classifications? =/ I'm not sure I understand. Do you mean something similar to the 'Rank' property of the Organism Classification type?
Anyway, I've created a new base called 'Commons Prototypes' and moved the 'Fictional Object Class' type there.
-
No not rank, check this example out: Super Star Destroyer... So what is it? It's a 'super' class of Star Destroyers with one known named ship, the Executor, but what else is it? It's a spaceship. I think there should be a property that allows us to state that this fictional class is a class of Spaceship. Nenya is one of the class of the Three Rings. It is also a ring and a magical artifact. We wouldn't have to do this if the the type was Fictional Space Ship Class or for Rings of Power.
Possible name of property: "Type of?" "Type?" Doesn't seem quite right. "Category?"
-
Okay, I think I see what you're saying. So... Fictional Object Category? That sounds about right. But... could't you just use the 'Subclass of' property to keep going to higher and higher classes until you get to a class called 'Space Ship'? I guess I can see how it would be nice to have a separate type for that (so you could link objects and classes directly to their root categories), but isn't 'Space Ship' really just a much higher classification of a Star Destroyer? =/ Or maybe we could do it both ways? What do you think?
-
Oh wait... I was just looking over the infobox on the wikipedia article for 'Star Destroyer' and something just occurred to me. Some object classes are groups of objects that are almost exactly the same (Imperial Star Destroyer, Tie-Fighter), while others are more like categories filled with these groups ('Star Destroyer' includes both Imperial and Victory class Star Destroyers.). Was that what you were talking about when you suggested the 'type of' property?
-
Well, I did run Nenya is of the class of = Three Rings > Rings of Power > Magic Ring through your class/classes of ladder. I suppose you could add one higher category, Ring, but that seems not quite right. Not sure about using Magic Ring as the preeminent class. But Nenya is both of the class Three Rings and a Ring and a Magic Ring and it would be a difficult query to find all the magic rings if you need to go several ply down. One could go the ship named Executor is of a class of = Super Star Destroyer > Imperial spacecraft > Spaceship. I'm torn as to having a hierarchical ladder or using the class property for all of the classes regardless of ranking on a topic.
You might want to ask this on the Freebase discuss about suggestions on modeling these relationships, my head is spinning ;)
-
Why can't you have both? The class type already has an 'Objects of this Class' property. Wouldn't Nenya be an object of all four classes? (The Three Rings, The Rings of Power, Magic Ring, and Ring.)
-
Try it out. I guess it could be used in that manner. Something in me is reluctant to advise this usage but if this will work then we should give it a go for a while, see if the community start using it as such.
-
Well, I guess it's already set up that way. Another thing I was considering is that there are really two types of object classes: The kind where all objects of the class are nearly identicle (I.E. Imperial Star Destroyer), and the kind where objects of the class have only a few charactaristics in common (Space Ship, Magical Ring). I suppose both of these could be represented by the same type, unless we wanted to assign different properties to them (I.E. The first kind could have height and weight properties, while this would not be practicle for the second kind.)
Although maybe we are over-complicating this. No data model can be absolutly perfect. I think perhaps you're right; we should just wait a while and see how people start using the object. We shouldn't wait too long though because if the object is used widely and we want to make changes later then there could be problems.
-
You definitely want to create a hierarchy rather than adding all the "parent" classes to the leaf nodes - otherwise you're denormalising the data in a way which makes it very hard to change the hierarchy later.
For example, imagine we had added all 20 rings of power with classes of "three rings", "rings of power", "ring" (obviously substitute "seven rings", "nine rings" or omit as appropriate for other rings), but hadn't thought to add "magic ring". If we know want to add "magic ring" into the hierarchy, we need to edit 20 different topics, and make sure that all 20 topics are edited in exactly the same way. This doesn't scale - imagine if you had 1000 topics to edit.
On the other hand, if we just create one class on each topic, all we need to do is to edit "rings of power", set its parent class as "magic ring" and set the parent class of "magic ring" as "ring". All done, and no possibility of inconsistent data creeping in.
There's an additional caveat for either side as well:
- Adding multiple classes: it's hard in MQL, and I think impossible in the web client, to keep multiple value properties ordered.
- It can be quite hard to get all the objects in a class when using the hierarchy method (aka the phylogeny pattern). However, this is an oft-requested improvement to MQL, so I'm hopeful that it will be implemented once everything's moved over to the Google infrastructure.
-
Ah, that's a very good point. So everything should just be formatted in a hirecal structure?
If that's how we're going to do it, then there's only a couple things left to decide on. (That I can think of anyway.)
-
Are we going to create a 'category' type as gmackenz suggested? If I'm not mistaken, the main reason for that suggestion was so it would be easy to find all "Rings of Power" or "Magic Rings" using MQL, but if Google and Freebase really are going to come up with a better solution to that problem, I don't think we need to worry about that right now.
-
Are we going to create separate types to differenciate between the two kinds of 'classes' that I mentioned earlier? (two posts above this one) The two kinds are slightly different, but they have a lot of the same properties. The only real difference I can think of is that classes that represent identicle groups of things could have properties such as height and weight (although ficitonal objects don't even have those particular properties right now), while those kinds of properties wouldn't be practical for classes (categories?) that represent something more general.
-
-
Yes. Lean towards the hierarchical. Simpler the model the better.
- Probably don't need it at this time. However, any MQL improvement as Phil mentioned has no established ETA.
- I'd go with fewer properties... If it's important, the properties are best on the object and not on the class. I don't think we have such properties on any of the 'classification' types used in say aircraft or spaceflight or boats.
-
- True. And remember that it is still possible to get all objects of a class (including subclasses) with MQL (even though it may be a bit difficult).
- Yeah, I guess we don't need it. And if people need more properties for a specific use case, (Space Ship Length, etc.) they can always make their own type that has Fictional Object Class listed as an included type.
-
-
-
Would it be possible to make the creator property a multiple entry one, as quite a few objects are created by more than one person.
-
Yes, that seems sensible. Because queries (e.g. through the API) might handle unique and non-unique properties differently, it will take a little time before the change can be made. You can follow the progress here: DA-1022
-
-
-
Currently, Fictional Object's "destroyed by" is just a text property, with no structure, and I'd like to remedy that. I'm interested in capturing the person or being behind the object's destruction, and perhaps method of destruction. For example, in the Harry Potter Universe, Marvolo Gaunt's Ring was destroyed by Dumbledore using Gryffindor's Sword.
Gordon kindly reminded me that acts of God or Nature can be the culprit as well, and suggests that for now, we use Common Topic as the expected type.
Thoughts?
-
I don't think Topic is ever a good choice; better to create a "fictional object destroyer" or some such type.
-
And in my example concerning Marvolo Gaunt's Ring, would the "fictional object destroyer" type apply to Albus Dumbledore or Gryffindor's Sword?
-
Fictional object needs some love I guess.
Maybe the creation and destruction links should be to a kind of Fictional Event CVTs (Destroyed by, Destroyer, Note, Fictional Calendar Date/Time)? Should it have a Fictional Object Type (like we now have for Fictional Setting)? I am guessing I should just get rid of the date created and date destroyed, especially for objects from a universe that has it's own unique calendar (Star Wars, LoTR, Dune, etc.).
-
Considering the difficulty of modeling fictional dates, I'd say we could omit the date properties altogether, and go with two properties (rather than a CVT) for destruction: Destroyer and Destroyed By (Dumbledore and Gryffindor's Sword, respectively).
+1 for fictional object type.
-
+1 for non-CVT Destroyer and Destroyed By. CVTs make everything difficult.
I think two new return types are warranted here: Fictional Object Destroyer (Dumbledore) and...what to call the second, something like Fictional Object Destruction Method (Gryffindor's Sword)?
-
Done.
-
-
-
Can we reciprocate Fictional Object in type Fictional Universe?
-
Check it out here, OK?
-
Cool, ship it! ;)
-