https://bugzilla.wikimedia.org/show_bug.cgi?id=37777

       Web browser: ---
             Bug #: 37777
           Summary: Database abstraction layer prevents reading of complex
                    structures.
           Product: MediaWiki extensions
           Version: master
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: blocker
          Priority: Unprioritized
         Component: Semantic MediaWiki
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected], [email protected]
    Classification: Unclassified
   Mobile Platform: ---


I have tried to extend SemanticMediaWiki with additional geographical shapes as
semantic properties. (this has been done in the branch 'polygons')

A polygon property consists of many coordinate properties. This is a more
advanced structure than previously defined. Storing the data seems to work
fine, however reading the data doesn't go as well.

I seem to have isolated the issue to the method getProperyValues in
the class SqlStubSemanticData. Here it seems that there is some kind
of mixup going on when i have defined a container to hold coordinates.

According to the code it seems that it tries to fetch a given array
entry with the key of the property in mStubPropVals. So if i have
defined the property "Polygon" that is of type _gpo (Graphical
Polygon), this type holds a list of _geo properties which is also
defined as a semantic property "Coordinates"

However, when this instance of Property is loaded in
SqlStubSemanticData, i can see that the mStubPropVals is populated
with a key of "Coordinates" when it is looking for a key "Polygon".

This issue prevents me to go forward with my geographical shapes properties.
Would be great if someone with a greater understanding of the database
abstraction layer could take a look at this.

Steps to reproduce issue:
1. Checkout polygons branch
2. Create a property of type [[Has type::Geographic polygon]]
3. Create a page with polygon property (ex. [[Polygon::34,24:33,22:64,22]])
4. Create an ask query. something along the lines of: 

{{#ask: [[Category:Polygon]]
| ?Polygon
| format=table
}}

5. Put a breakpoint in SqlStubSemanticData in the method getProperyValues and
look at how the polygon data is attempted to be loaded.

-- 
Configure bugmail: https://bugzilla.wikimedia.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
You are on the CC list for the bug.

_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to