Link properties ,relinquish?

Hi there, i’m getting some information of link files and it seems that something i’m doing wrong because i have to rellinquish some data every time i run the script.

First i get the link doc throw @Konrad_K_Sobon node and then feed into that code:

> import clr
> import math
> # import Document Manager
> clr.AddReference("RevitServices")
> from RevitServices.Persistence import DocumentManager
> 
> clr.AddReference("RevitNodes")
> import Revit
> clr.ImportExtensions(Revit.Elements)
> clr.ImportExtensions(Revit.GeometryConversion)
> clr.AddReference("RevitAPI")
> from Autodesk.Revit.DB import *
> 
> docs = IN[0]
> outData = []
> ft2m = 0.3048
> if isinstance(IN[0], list):
> 	docs = IN[0]
> else:
> 	docs = [(IN[0])]
> 
> for doc in docs:
> 	if doc == None:
> 		continue
> 	name = doc.Title
> 	coll = FilteredElementCollector(doc)
> 	basePts = coll.OfClass(BasePoint).ToElements()
> 	projBasePt = None
> 	basePt = []
> 	survPt = []
> 	loc = []
> 	for e in basePts:
> 		a = e.Category.Name
> 		if a == "Project Base Point":		
> 			pbpEW = e.LookupParameter("E/W")
> 			pbpNS = e.LookupParameter("N/S")
> 			pbpElev = e.LookupParameter("Elev")
> 			pbpAngle = e.LookupParameter("Angle to True North")
> 			basePt.append(round(pbpNS.AsDouble()*ft2m,20))
> 			basePt.append(round(pbpEW.AsDouble()*ft2m,20))
> 			basePt.append(round(pbpElev.AsDouble()*ft2m,20))
> 			basePt.append(round(pbpAngle.AsDouble()*180/math.pi,20))
> 		elif a == "Survey Point":
> 			pspEW = e.LookupParameter("E/W")
> 			pspNS = e.LookupParameter("N/S")
> 			pspElev = e.LookupParameter("Elev")
> 			survPt.append(round(pspNS.AsDouble()*ft2m,20))
> 			survPt.append(round(pspEW.AsDouble()*ft2m,20))
> 			survPt.append(round(pspElev.AsDouble()*ft2m,20))
> 	
> 	projLoc = doc.ActiveProjectLocation
> 	origin = XYZ(0.0,0.0,0.0)
> 	
> 	projPos = projLoc.get_ProjectPosition(origin)
> 	if projPos == None:
> 		loc.append("No Project Position at origin point")
> 	else:
> 		loc.append(round(projPos.EastWest * ft2m,6))
> 		loc.append(round(projPos.NorthSouth * ft2m,6))
> 	projData = [name] + [basePt] + [survPt]# + [loc] #for Active Location
> 	outData.append(projData)
> 	    	
> OUT = outData 

This code is taking some worksets or elements in the linked files?

Thanks in advance

Capture