Quick question about property deletion

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Quick question about property deletion

Jingyi C. Shi
Dear all,

Do you know how to delete a property permanently, so that the property name
will not appear in the properties list after I delete the property page?

For example, if I have a property named "Is A". After I delete the page
{{Property:Is_A}}, the "Is A" is still there in the {{Special:Properties}}.
How can I make it disappeared?

Thanks much,
Catherine
------------------------------------------------------------------------------
_______________________________________________
Semediawiki-user mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/semediawiki-user
Reply | Threaded
Open this post in threaded view
|

Re: Quick question about property deletion

James HK
Hi,

Let me elaborate on this issue which has surfaced before in different
flavors. When a property is created (or better an annotation is made)
the objectId table is assigned an ID (if it doesn't exist already) to
the property and the value.

If all references (= for each value annotation) are deleted together
with the property page (which is only to represent a user interface)
then the objectId table will still maintain an assignment to the
property so that in case it is reused (or undeleted) assignments can
be recovered.

Of course you could run a report to deleted those ID's if it is clear
that no other assignments exists but this task has been open for some
time [1] and unless someone is tackling the issue it will remain open.

As to why Special:Properties does display those apparently deleted
properties (those with null value assignments) is because the table
select [2] is done without any status information.

As a workaround, you can suppress the display of zero based properties
by setting [3] ($GLOBALS['smwgPropertyZeroCountDisplay'] = false).

[0] https://github.com/SemanticMediaWiki/SemanticMediaWiki/issues/701#issuecomment-69366324

[1] https://github.com/SemanticMediaWiki/SemanticMediaWiki/issues/498,
see also https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/includes/storage/SQLStore/SMW_SQLStore3_Writers.php#L96

[2] https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/src/SQLStore/ListLookup/PropertyUsageListLookup.php#L111-L120

[3] https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/SemanticMediaWiki.settings.php#L712

Cheers

On 7/29/15, Jingyi Shi <[hidden email]> wrote:

> Dear all,
>
> Do you know how to delete a property permanently, so that the property name
> will not appear in the properties list after I delete the property page?
>
> For example, if I have a property named "Is A". After I delete the page
> {{Property:Is_A}}, the "Is A" is still there in the {{Special:Properties}}.
> How can I make it disappeared?
>
> Thanks much,
> Catherine
> ------------------------------------------------------------------------------
> _______________________________________________
> Semediawiki-user mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/semediawiki-user
>

------------------------------------------------------------------------------
_______________________________________________
Semediawiki-user mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/semediawiki-user