Gallery Tutorial [TECHNICAL SLIDE TRAIL] The Webel libraries for Wolfram Mathematica: With SysMLv1 models. Section SECTION: Webel ADT case study: Extracting structured data from unstructured Open XML spreadsheet data Tags and keywords Webel Mathematica keywords ADT` Webel ADT UD$EX$Component UD$ValuesSectionGroup UD$VSG$Component UD$VS$Component UD$ValuesSection US$ValuesSection US$ValuesSectionGroup @EX$Val @EX$Val{} Keywords Wolfram Wolfram Language Mathematica Webel::SysML4Mathematica Webel IT Australia Abstract Data Types Webel:ADT Systems Modeling Language SysMLv1 Click on the image to view it full size For reference, some associated Policy Notes (you don't need to visit these links yet): Mathematica: Webel ADT pseudo classes: The validity of the type of a wrapped '$$' value of an EX$Val may be checked in ADT "constructors" which have type checking utility support. This strategy has been chosen over sub-types of EX$Val. Mathematica: Webel ADT pseudo classes: An EX$Val has concise methods for testing the type of its wrapped '$$' value: isR, isI, isB, isQ, isS. These may be used in ADT "constructor" type tests. Up next The US$SheetManager as a bridge between the US Layer and EX Layer Notes [CAPABILITY]{SUBJECT-TO-CHANGE} Mathematica: Webel ADT pseudo classes: The validity of the type of a wrapped '$$' value of an EX$Val may be checked in ADT "constructors" which have type checking utility support. This strategy has been chosen over sub-types of EX$Val. [CAPABILITY]{SUBJECT-TO-CHANGE} Mathematica: Webel ADT pseudo classes: An EX$Val has concise methods for testing the type of its wrapped '$$' value: isR, isI, isB, isQ, isS. These may be used in ADT "constructor" type tests. [CAPABILITY]{SUBJECT-TO-CHANGE} Mathematica: Webel ADT pseudo classes: 'Q: Do I have to use these EX$Val scalar "atom" thingies and the EX$Row, EX$RowList, and EX$RowMap? Can't I just use Wolfram Language Lists and Associations?' A: Of course you can also use the basic Wolfram Language! Snippets (quotes/extracts) Visit also Mathematica: POLICY NOTES for the Webel Abstract Data Type (ADT) pseudo classes with inheritance for the Wolfram Language Visit also (backlinks) Related slides (includes other tutorials) adt$store, adt$fetch, and «adt:ref»: Example: Reference XL$ResourcesMap by ID in US$ResourcesHolder. XL$Cell value resolution for “text” requires an XL$ResourcesMap (Real, Integer, and Boolean value resolution does not) UUID-driven Once-caching. Example: XL$Cell value resolution with an XL$ResourcesMap Webel ADT hierarchy views as tree, graph, and SysML ADT hierarchy for the XL` package for reading unstructured data from OpenXML XLSM bundles Overview of the Webel OpenXML libraries ADT Case Study Typical unstructured spreadsheet data imported into the XL layer XL$Row and XL$Cell under the hood XL$Cell with a VBA formula and XL$F Spreadsheet “units indicator” HACKS do NOT use a units-aware Quantity algebra! Units and Quantity extraction with US$Row US$RowList spanned rows filling US$RowList sub-list extraction US$RowList & EX$RowMap column extraction and custom styled tables US$RowList “section” extraction UD` demo package for US$Section UD` demo: Basic US$ValuesSection US$ValuesSection to EX$RowMap US$SectionMap auto-detection Specific Component-aware sub-ADTs Demo Component values extraction (but not yet as EX Component ADTs) Related slides (backlinks, includes other tutorials) The US$SheetManager as a bridge between the US Layer and EX Layer Extracted demo UD$EX$Component:Demo UD$EX$Components: Creative views in the UD$SheetManager Demo UD$EX$Components analyser UD$EX$Components as (quick) XML UD$EX$Component “database” demo (using a Wolfram Language EntityStore) Flags Book traversal links for The demo UD$EX$Component for extracted structured EX Layer data Previous Up Next