The structure of the file package.xml with all elements can be revealed
with the command "xmlstarlet elements":

$ xmlstarlet elements -u package.xml
OfflineSyncPackage
OfflineSyncPackage/FileLocations
OfflineSyncPackage/FileLocations/FileLocation
OfflineSyncPackage/Updates
OfflineSyncPackage/Updates/Update
OfflineSyncPackage/Updates/Update/BundledBy
OfflineSyncPackage/Updates/Update/BundledBy/Revision
OfflineSyncPackage/Updates/Update/Categories
OfflineSyncPackage/Updates/Update/Categories/Category
OfflineSyncPackage/Updates/Update/EulaFiles
OfflineSyncPackage/Updates/Update/EulaFiles/File
OfflineSyncPackage/Updates/Update/EulaFiles/File/Language
OfflineSyncPackage/Updates/Update/Languages
OfflineSyncPackage/Updates/Update/Languages/Language
OfflineSyncPackage/Updates/Update/PayloadFiles
OfflineSyncPackage/Updates/Update/PayloadFiles/File
OfflineSyncPackage/Updates/Update/Prerequisites
OfflineSyncPackage/Updates/Update/Prerequisites/Or
OfflineSyncPackage/Updates/Update/Prerequisites/Or/UpdateId
OfflineSyncPackage/Updates/Update/Prerequisites/UpdateId
OfflineSyncPackage/Updates/Update/SupersededBy
OfflineSyncPackage/Updates/Update/SupersededBy/Revision

Using the option -a lists all elements and all attributes:

$ xmlstarlet elements -a package.xml | LC_ALL=C sort -u
OfflineSyncPackage
OfflineSyncPackage/@CreationDate
OfflineSyncPackage/@MinimumClientVersion
OfflineSyncPackage/@PackageId
OfflineSyncPackage/@PackageVersion
OfflineSyncPackage/@ProtocolVersion
OfflineSyncPackage/@SourceId
OfflineSyncPackage/@xmlns
OfflineSyncPackage/FileLocations
OfflineSyncPackage/FileLocations/FileLocation
OfflineSyncPackage/FileLocations/FileLocation/@Id
OfflineSyncPackage/FileLocations/FileLocation/@IsIncluded
OfflineSyncPackage/FileLocations/FileLocation/@Url
OfflineSyncPackage/Updates
OfflineSyncPackage/Updates/Update
OfflineSyncPackage/Updates/Update/@CreationDate
OfflineSyncPackage/Updates/Update/@DefaultLanguage
OfflineSyncPackage/Updates/Update/@DeploymentAction
OfflineSyncPackage/Updates/Update/@DownloadPriority
OfflineSyncPackage/Updates/Update/@IsBundle
OfflineSyncPackage/Updates/Update/@IsLeaf
OfflineSyncPackage/Updates/Update/@IsSoftware
OfflineSyncPackage/Updates/Update/@RevisionId
OfflineSyncPackage/Updates/Update/@RevisionNumber
OfflineSyncPackage/Updates/Update/@UpdateId
OfflineSyncPackage/Updates/Update/BundledBy
OfflineSyncPackage/Updates/Update/BundledBy/Revision
OfflineSyncPackage/Updates/Update/BundledBy/Revision/@Id
OfflineSyncPackage/Updates/Update/Categories
OfflineSyncPackage/Updates/Update/Categories/Category
OfflineSyncPackage/Updates/Update/Categories/Category/@Id
OfflineSyncPackage/Updates/Update/Categories/Category/@Type
OfflineSyncPackage/Updates/Update/EulaFiles
OfflineSyncPackage/Updates/Update/EulaFiles/File
OfflineSyncPackage/Updates/Update/EulaFiles/File/@Id
OfflineSyncPackage/Updates/Update/EulaFiles/File/Language
OfflineSyncPackage/Updates/Update/EulaFiles/File/Language/@Name
OfflineSyncPackage/Updates/Update/Languages
OfflineSyncPackage/Updates/Update/Languages/Language
OfflineSyncPackage/Updates/Update/Languages/Language/@Name
OfflineSyncPackage/Updates/Update/PayloadFiles
OfflineSyncPackage/Updates/Update/PayloadFiles/File
OfflineSyncPackage/Updates/Update/PayloadFiles/File/@Id
OfflineSyncPackage/Updates/Update/Prerequisites
OfflineSyncPackage/Updates/Update/Prerequisites/Or
OfflineSyncPackage/Updates/Update/Prerequisites/Or/UpdateId
OfflineSyncPackage/Updates/Update/Prerequisites/Or/UpdateId/@Id
OfflineSyncPackage/Updates/Update/Prerequisites/UpdateId
OfflineSyncPackage/Updates/Update/Prerequisites/UpdateId/@Id
OfflineSyncPackage/Updates/Update/SupersededBy
OfflineSyncPackage/Updates/Update/SupersededBy/Revision
OfflineSyncPackage/Updates/Update/SupersededBy/Revision/@Id
