AP Chapter Seminar "International Best Practices in the Petroleum Sector"

Professor Owen Anderson is the Distinguished Oil and Gas Scholar for the Kay Bailey Hutchison Center for Energy Law and Business at The University of Texas School of Law and the AIPN's Vice President of Education.

He is the co-author of Kuntz on Oil and Gas (Matthew Bender), International Petroleum Transactions (Rocky Mountain Mineral Law Foundation), Cases and Material on Oil and Gas Law (West), A Student's Guide to Estates in Land and Future Interests (N. Carolina. Academic Press), and Volume 2 of Waters and Water Rights (Matthew Bender). He has written over 100 articles on oil and gas law. He serves on the Board of Editors for the Oil and Gas Reporter (Center for American and International Law) and Editor in Chief of the Texas Title Standards.

Sean Rush is an international petroleum lawyer resident in New Zealand and licensed to practice law here and in the UK.

From 1996 to 2012 Sean was resident in London, UK, where he was an active and prominent member of the UK oil and gas legal fraternity with senior roles such as Counsel for North West Europe for Petro-Canada’s 120,000 bbl/day business and partner and Head of Oil & Gas to a London law firm.  During that period, decommissioning became a prominent issue and Sean grappled, first hand, with commercial and regulatory practices designed to manage the decommissioning risk as they evolved. Sean returned to New Zealand in 2013 as Todd Energy’s Commercial Manager and formed his own, independent legal consultancy, Spindletop Law in 2015.  He continues to advise UK North Sea clients and others from his Wellington office.

Sean is a former Chairman of the International Bar Association's UK Energy Lawyer's Group and is the AIPN’s Regional Director for Australia/Pacific. He has a Master's in Petroleum Law and Policy (with distinction) from Dundee's Centre for Energy, Mineral and Petroleum Law and Policy.

Debugging Info
pagedictsize=0
sqltime = 0.046 s
cpu time = 0.150 s
real time = 0.268 s
memory increase = 17868 kB
fields =
templates =
/data/aipn/current/generic/themes/shared/vue-apps/maxx-theme/dist/.vite/manifest.json
/data/aipn/current/generic/themes/www/mako/meetings/microsite_footer.html
/data/aipn/current/generic/themes/www/mako/meetings/microsite_header_pixel
/data/aipn/current/generic/themes/www/mako/meetings/microsite_header_responsive.html
/data/aipn/current/generic/themes/www/mako/meetings/microsite_index_responsive.html
dg = [] | []
extra debug info =
queries = 37 queries

Total TimeCountAvg TimeQuery
0.0081 call
1 row
0.008 SELECT COUNT(DISTINCT `Registration`.`RegistrationId`) AS count FROM (Registration, Invoice) WHERE ((((((`Registration`.`InvoiceId`=`Invoice`.`InvoiceId` AND IFNULL(`Invoice`.`_SABalance`, 0)<=0) AND `Registration`.`MeetingId`=0x267F0000010A) AND (`Registration`.`dateCancelled` is null OR `Registration`.`dateCancelled`>'2026-04-21 11:33:26')) AND `Registration`.`dateRejected` is null) AND `Registration`.`dateSubmitted` is not null) AND `Registration`.`MeetingId`=0x267F0000010A)
0.0031 call
1 row
0.003 SELECT DISTINCT hex(`Meeting`.`MeetingId`) AS `MeetingId`, `Meeting`.`name`, `Meeting`.`hostName`, `Meeting`.`description`, `Meeting`.`audienceDescription`, `Meeting`.`cosponsors`, `Meeting`.`includes`, `Meeting`.`attire`, `Meeting`.`cancellationPolicy`, `Meeting`.`thankYouText`, `Meeting`.`registrationStarts`, `Meeting`.`registrationEnds`, `Meeting`.`earlybirdCutoff`, `Meeting`.`onlineRegistrationsEnabled`, `Meeting`.`selectSessionsOnRegForm`, `Meeting`.`accountingCode`, `Meeting`.`maximumNumAttendees`, `Meeting`.`type`, `Meeting`.`showPublicSessionSearch`, `Meeting`.`allowSpouseReg`, `Meeting`.`continuingEdUnits`, `Meeting`.`mediaAllowed`, `Meeting`.`travelInfo`, `Meeting`.`hotelBlurb`, `Meeting`.`dateClosed`, `Meeting`.`showFeesOnPublicView`, `Meeting`.`showPublicSchedule`, `Meeting`.`calendarLinkType`, `Meeting`.`calendarBlurb`, `Meeting`.`retainedEarningsAcctCode`, `Meeting`.`enableHousing`, `Meeting`.`eventId`, `Meeting`.`staffNotificationEmail`, `Meeting`.`paymentInstructions`, `Meeting`.`staffCancellationEmail`, `Meeting`.`lowRoomTrigger`, `Meeting`.`continuingEdNumber`, `Meeting`.`enableRSVP`, `Meeting`.`micrositePath`, `Meeting`.`bgcolor`, `Meeting`.`accentColor`, `Meeting`.`tabTitleColor`, `Meeting`.`bodyTextColor`, `Meeting`.`linkTextColor`, `Meeting`.`rightNavTextColor`, `Meeting`.`fontTitleSize`, `Meeting`.`fontBodySize`, `Meeting`.`fontName`, `Meeting`.`navbarColor`, `Meeting`.`sidebarColor`, `Meeting`.`highlightedTabTextColor`, `Meeting`.`headlineColor`, `Meeting`.`highlightedTabColor`, `Meeting`.`inSiteAccentColor`, `Meeting`.`inSiteBodyTextColor`, `Meeting`.`inSiteHeadlineColor`, `Meeting`.`inSiteHighlightedTabColor`, `Meeting`.`inSiteHighlightedTabTextColor`, `Meeting`.`inSiteLinkTextColor`, `Meeting`.`inSiteNavbarColor`, `Meeting`.`inSiteRightNavTextColor`, `Meeting`.`inSiteSidebarColor`, `Meeting`.`inSiteTabTitleColor`, `Meeting`.`inSiteFontBodySize`, `Meeting`.`inSiteFontName`, `Meeting`.`inSiteFontTitleSize`, `Meeting`.`useBadges`, `Meeting`.`staffNotificationRevisitedEmail`, `Meeting`.`anticipatedRegistrations`, `Meeting`.`_budgetedRevenue`, `Meeting`.`groupRegistrationOn`, `Meeting`.`allowPlaceholders`, `Meeting`.`feesPageTopText`, `Meeting`.`badgesPageTopText`, `Meeting`.`questionsPageTopText`, `Meeting`.`eventsPageTopText`, `Meeting`.`reviewPageTopText`, `Meeting`.`paymentPageTopText`, `Meeting`.`micrositeTemplate`, `Meeting`.`inSiteTemplate`, `Meeting`.`isWebinar`, `Meeting`.`housingPageTopText`, `Meeting`.`attendeesPageTopText`, `Meeting`.`shortCalDescription`, `Meeting`.`allowAddToCalendar`, `Meeting`.`campaignCode`, `Meeting`.`recordOrigin`, `Meeting`.`additionalFeesPageTopText`, `Meeting`.`referralText`, `Meeting`.`hasReferrals`, `Meeting`.`wwwRegistrationsEditAlwaysApprove`, `Meeting`.`thankYouFullyPaidText`, `Meeting`.`venue`, `Meeting`.`sendToLMS`, `Meeting`.`showSponsorLogos`, `Meeting`.`confSponsorText`, `Meeting`.`isArchived`, `Meeting`.`hideIntranetSummary`, `Meeting`.`showGroupEdit` FROM (Meeting) WHERE `Meeting`.`micrositePath`='AP2June2017'
0.0031 call
0 rows
0.003 INSERT INTO `PageRequest` SET `mxxCreated`='2026-04-21 11:33:26',`mxxCreatedBy`=NULL, `PageRequestId`=0x447DB000000000, `path`='forms/meeting/Microsite/AP2June2017,1', `formName`='Microsite', `site`='www', `clientAcronym`='AIEN', `pid`='3435113', `requestNum`='1', `pageDictSize`=NULL, `objectId`=NULL, `templateMethod`=NULL, `growth`=NULL, `server`='www.aipn.maxx.matrixdev.net', `dbThreadId`='1157250', `startTime`='2026-04-21 11:33:26', `sessionId`=0x6CAF4FD498AA26B3, `userId`=0x0, `userName`='public', `result`=NULL, `sqltime`=NULL, `timeTaken`=NULL, `dictSize`=NULL, `fields`='{}', `clientIPAddr`='216.73.217.47'
0.0031 call
0 rows
0.003 COMMIT
0.0031 call
0 rows
0.003 SELECT DISTINCT hex(`Website`.`WebsiteId`) AS `WebsiteId`, `Website`.`description`, `Website`.`address` FROM (Meeting, Website) WHERE `Website`.`MeetingId`=`Meeting`.`MeetingId` AND `Meeting`.`MeetingId`=0x267F0000010A
0.0032 calls
244 rows
0.001 SELECT * FROM Country ORDER BY orderindex, id
0.0031 call
1 row
0.003 SELECT COUNT(DISTINCT `Registration`.`RegistrationId`) AS count FROM (Registration, Invoice) WHERE ((((((`Registration`.`InvoiceId`=`Invoice`.`InvoiceId` AND IFNULL(`Invoice`.`_SABalance`, 0)>0) AND `Registration`.`MeetingId`=0x267F0000010A) AND (`Registration`.`dateCancelled` is null OR `Registration`.`dateCancelled`>'2026-04-21 11:33:26')) AND `Registration`.`dateRejected` is null) AND `Registration`.`dateSubmitted` is not null) AND `Registration`.`MeetingId`=0x267F0000010A)
0.0021 call
0 rows
0.002 SELECT DISTINCT hex(`Individual`.`IndividualId`) AS `IndividualId`, `Individual`.`EthnicityId`, `Individual`.`firstName`, `Individual`.`lastName`, `Individual`.`prefix`, `Individual`.`suffix`, `Individual`.`title`, `Individual`.`mxxUpdatedBy`, `Individual`.`enteredBy`, `Individual`.`gender`, `Individual`.`SalaryId`, `Individual`.`ssn`, `Individual`.`middleInitial`, `Individual`.`email`, `Individual`.`alternateEmail`, `Individual`.`emailFromThirdPartyId`, `Individual`.`mxxUpdated`, `Individual`.`fax`, `Individual`.`homePhone`, `Individual`.`workPhone`, `Individual`.`secondaryPhone`, `Individual`.`mobilePhone`, `Individual`.`pager`, `Individual`.`IndividualTypeId`, `Individual`.`paidDues`, hex(`Individual`.`VotingId`) AS `VotingId`, `Individual`.`aliases`, `Individual`.`personalStatus`, `Individual`.`salutation`, `Individual`.`homeFax`, `Individual`.`visionsId`, `Individual`.`emailSent`, `Individual`.`personalBackground`, `Individual`.`dontEmail`, `Individual`.`preferredMethodOfComm`, `Individual`.`mxxCreated`, `Individual`.`jobLevel`, `Individual`.`publishInDirectory`, `Individual`.`individualNum`, `Individual`.`birthDay`, `Individual`.`ageGroup`, `Individual`.`degreeLevel`, `Individual`.`maritalStatus`, `Individual`.`designations`, `Individual`.`yearJoined`, `Individual`.`otherJobFunction`, `Individual`.`numberOfChildren`, `Individual`.`namesOfChildren`, `Individual`.`groupAffiliations`, `Individual`.`schoolAttended`, `Individual`.`SACompanyName`, `Individual`.`recordOrigin`, `Individual`.`source`, `Individual`.`sourceOther`, `Individual`.`dontSnailmail`, `Individual`.`prospectStatus`, `Individual`.`canSpamSet`, hex(`Individual`.`mxxCreatedBy`) AS `mxxCreatedBy`, `Individual`.`criticalNotes`, `Individual`.`congresspersonFor`, `Individual`.`congressParty`, `Individual`.`birthYear`, `Individual`.`mailChimpMergeCache`, `Individual`.`primaryRegion`, `Individual`.`companyType`, `Individual`.`yearsExperience`, `Individual`.`jobDuties`, `Individual`.`jobDutiesDescription`, `Individual`.`seekingParticipation`, `Individual`.`seekingParticipationDescription`, `Individual`.`NOCDuesConsiderations`, `Individual`.`employmentField`, `Individual`.`companyTypeOther`, `Individual`.`isYoungNegotiator`, `Individual`.`Education1_Name`, `Individual`.`Education1_Time`, `Individual`.`Education1_Major`, `Individual`.`Education1_Degree`, `Individual`.`Education2_Name`, `Individual`.`Education2_Time`, `Individual`.`Education2_Major`, `Individual`.`Education2_Degree`, `Individual`.`Education3_Name`, `Individual`.`Education3_Time`, `Individual`.`Education3_Major`, `Individual`.`Education3_Degree`, `Individual`.`graduationDate`, `Individual`.`proofOfStudentEnrollment`, `Individual`.`createdOnWWW`, `Individual`.`howHeardAboutOther`, `Individual`.`lastCheckedNotifications`, `Individual`.`SAIsBoard`, `Individual`.`delinquentSince`, `Individual`.`isWomenNegotiator`, `Individual`.`isMergeProtected` FROM (Address, Individual) WHERE `Address`.`AddressId`=0x267F00000118 AND `Address`.`IndividualId`=`Individual`.`IndividualId` ORDER BY `Individual`.`lastName`, `Individual`.`firstName`, `Individual`.`middleInitial`
0.0021 call
1 row
0.002 SELECT DISTINCT hex(`Address`.`AddressId`) AS `AddressId`, `Address`.`line1`, `Address`.`line2`, `Address`.`city`, `Address`.`CountryId`, `Address`.`AddressTypeId`, `Address`.`StateProvinceId`, `Address`.`province`, `Address`.`zip`, `Address`.`isPrimary`, `Address`.`name`, `Address`.`mainPhone`, `Address`.`fax`, `Address`.`tollFree`, `Address`.`zip5`, `Address`.`isZipVerified`, `Address`.`congressionalDistrict`, `Address`.`latitude`, `Address`.`longitude`, `Address`.`jsonResult`, `Address`.`countyFips`, `Address`.`countyName`, `Address`.`stateFips` FROM (Meeting, Address) WHERE `Meeting`.`MeetingId`=0x267F0000010A AND `Meeting`.`locationAddressId`=`Address`.`AddressId` ORDER BY `Address`.`zip`
0.0021 call
1 row
0.002 SELECT DISTINCT hex(`File`.`FileId`) AS `FileId`, `File`.`filename`, `File`.`description`, `File`.`caption`, `File`.`altTag`, hex(`File`.`parentId`) AS `parentId` FROM (Meeting, File) WHERE `Meeting`.`bannerFileId`=`File`.`FileId` AND `Meeting`.`MeetingId`=0x267F0000010A
0.0021 call
1 row
0.002 SELECT DISTINCT hex(`MicrositeTabComponent`.`MicrositeTabComponentId`) AS `MicrositeTabComponentId`, `MicrositeTabComponent`.`type`, `MicrositeTabComponent`.`text`, `MicrositeTabComponent`.`orderindex` FROM (MicrositeTab, MicrositeTabComponent) WHERE `MicrositeTabComponent`.`MicrositeTabId`=`MicrositeTab`.`MicrositeTabId` AND `MicrositeTab`.`MicrositeTabId`=0x268500000009 ORDER BY `MicrositeTabComponent`.`orderindex`
0.0021 call
12 rows
0.002 SELECT DISTINCT hex(`MicrositeTab`.`MicrositeTabId`) AS `MicrositeTabId`, `MicrositeTab`.`title`, `MicrositeTab`.`orderindex`, `MicrositeTab`.`enabled`, `MicrositeTab`.`isInSite` FROM (Meeting, MicrositeTab) WHERE `MicrositeTab`.`MeetingId`=`Meeting`.`MeetingId` AND `Meeting`.`MeetingId`=0x267F0000010A
0.0026 calls
1 row
0.000 SELECT version from databasemap;
0.0011 call
1 row
0.001 SELECT DISTINCT hex(`Timezone`.`TimezoneId`) AS `TimezoneId`, `Timezone`.`description`, `Timezone`.`tzname`, hex(`Timezone`.`orderindex`) AS `orderindex` FROM (CalendarItem, Timezone) WHERE `CalendarItem`.`CalendarItemId`=0x267F00000116 AND `CalendarItem`.`TimezoneId`=`Timezone`.`TimezoneId` ORDER BY `Timezone`.`orderindex`
0.0016 calls
2 rows
0.000 SELECT * FROM YesNo ORDER BY orderindex, id
0.0011 call
1 row
0.001 SELECT DISTINCT hex(`MyMeeting`.`MyMeetingId`) AS `MyMeetingId`, `MyMeeting`.`published`, `MyMeeting`.`description`, `MyMeeting`.`mxxCreated`, hex(`MyMeeting`.`mxxCreatedBy`) AS `mxxCreatedBy`, `MyMeeting`.`mxxUpdated`, hex(`MyMeeting`.`mxxUpdatedBy`) AS `mxxUpdatedBy`, `MyMeeting`.`rule`, `MyMeeting`.`introText`, `MyMeeting`.`embedCode` FROM (Meeting, MyMeeting) WHERE `MyMeeting`.`MeetingId`=`Meeting`.`MeetingId` AND `Meeting`.`MeetingId`=0x267F0000010A
0.0011 call
1 row
0.001 SELECT DISTINCT `CalendarItem`.`type`, `CalendarItem`.`startDate`, `CalendarItem`.`endDate`, `CalendarItem`.`location`, hex(`CalendarItem`.`CalendarItemId`) AS `CalendarItemId`, `CalendarItem`.`name`, `CalendarItem`.`status`, `CalendarItem`.`contactName`, `CalendarItem`.`contactPhone`, `CalendarItem`.`contactEmail`, `CalendarItem`.`description`, `CalendarItem`.`URL`, `CalendarItem`.`URLDescription`, `CalendarItem`.`handOut`, `CalendarItem`.`handOutDescription`, `CalendarItem`.`minutesUpload`, `CalendarItem`.`minutes`, `CalendarItem`.`phone`, `CalendarItem`.`fax`, `CalendarItem`.`line1`, `CalendarItem`.`line2`, `CalendarItem`.`city`, `CalendarItem`.`province`, `CalendarItem`.`zip`, `CalendarItem`.`state`, `CalendarItem`.`country`, `CalendarItem`.`attendeeNames` FROM (CalendarItem, Meeting) WHERE `CalendarItem`.`MeetingId`=`Meeting`.`MeetingId` AND `Meeting`.`MeetingId`=0x267F0000010A ORDER BY `CalendarItem`.`startDate`
0.0011 call
1 row
0.001 SELECT DISTINCT hex(`ClientSetting`.`ClientSettingId`) AS `ClientSettingId`, `ClientSetting`.`name`, `ClientSetting`.`value`, `ClientSetting`.`parentClass`, hex(`ClientSetting`.`parentId`) AS `parentId` FROM (ClientSetting) WHERE ((`ClientSetting`.`name`='personalProfile_editPhoto' AND `ClientSetting`.`parentClass` is null) AND `ClientSetting`.`parentId` is null)
0.0011 call
159 rows
0.001 SELECT * FROM webselect
0.0011 call
0 rows
0.001 SELECT DISTINCT hex(`Branch`.`BranchId`) AS `BranchId`, `Branch`.`name`, `Branch`.`isMain`, `Branch`.`mainPhone`, `Branch`.`secondaryPhone`, `Branch`.`tollFree`, `Branch`.`fax` FROM (Branch, Address) WHERE `Address`.`AddressId`=0x267F00000118 AND `Address`.`BranchId`=`Branch`.`BranchId` ORDER BY `Branch`.`isMain`, `Branch`.`name`
0.0001 call
9 rows
0.000 SELECT * FROM WorldRegion ORDER BY orderindex, id
0.0001 call
4 rows
0.000 SELECT * FROM EmploymentField ORDER BY orderindex, id
0.0001 call
12 rows
0.000 SELECT * FROM CompanyTypeIndiv ORDER BY orderindex, id
0.0001 call
3 rows
0.000 SELECT * FROM JobDuties ORDER BY orderindex, id
0.0001 call
1 row
0.000 SELECT * FROM uuid FOR UPDATE
0.0001 call
0 rows
0.000 START TRANSACTION