Financial Regulation Ontology Tutorial chapter two – loading the law

1 Financial Regulation Ontology Tutorial chapter two – lo...
Author: Norman Short
0 downloads 2 Views

1 Financial Regulation Ontology Tutorial chapter two – loading the lawImporting the text of US laws and regulations into the Financial Regulation Ontology Jurgen Ziemer, Jayzed Data Models Inc.,

2 Loading the law – approach and perspectivesThe chapter introduces legislative Use Cases and our approach Semantic ETL. Then we take the less complex source, Code of Federal Regulations (CFR) end-to-end from extract, transformation and load into FRO ontology. Finally we load the United State Code (USC). Static Reference Data The Federal Reserve Bank (FED) is the primary regulator for US Banks. The Securities & Exchange Commission (SEC) regulates Investment Funds. US Congress makes the law. We show how LKIF and FRO model these agents, their relationships and actions. Semantic Integration Semantic Data Integration is still Extract, Transform, and Load. The tutorial shows conceptual, logical and physical Data Integration model in a semantic environment. We use the TopBraid1 ontology toolset, but other ontology platforms and RDF data stores can substitute. XML Source The Government Publishing Office (GPO) provides XML versions of the Code of Federal Regulations (CFR). FRO imports CFR Title 12 Banking and 17 Investment Adviser Act. The Office of the Law Revision Council (OLRC) codifies the law and publishes in XML format. FRO imports USC Title 12 and 15. Ontology Model This chapter dives deeper into Estrella LKIF modules Action and Medium. We explain where reference and XML source data instantiate classes and properties. FRO extensions to the reference ontology implement a Legal Document structure of defined classes and primitives for CFR and USC * See Nuria Casellas for an in-depth introduction and comparison of Legal Ontologies © Jayzed Data Models Inc. 2016

3 FRO ties Legal Rules to the text of the lawThe Ontology Knowledge layer makes the coding logic transparent to provide Proof and Trust. We want the law and regulations within the ontology and directly link them to their implementation. The diagram shows a Legal Rule, Investor Adviser Act Section §80b-2a 11, the SEC definition of Investment Advisers. The class Ex US IAA Section 202_1_11 has the axioms for Investment Advisors to be included under the SEC Rule: The owl:equivalentClass defines then as a UNION of fo-fr-iaa:Defined_Ex_US_IAA_Section_202_1_11_business and fo-fr-iaa:Defined_Ex_US_IAA_Section_202_1_11_service and fo-fr-iaa:Defined_Ex_US_IAA_Section_202_1_11_compensation These are subclasses that in turn define the axioms for the SEC criteria. Likewise the exclusions are encoded as Defined Classes. The Reasoner will evaluate the axiom and place matching Funds as individuals of the defined class. Chapter III – legal reasoning of the tutorial will explain in detail. The property lkif-expr:medium ties the Legal Rule to the USC_Paragraph of the Legal Document. The Paragraph states: “Investment adviser means any person who, for compensation, engages in the business of advising others…” Compliance officers and ontology modeler work together translating the legal requirement into a well-defined hierarchy of class definitions. Business Requirements, mapping, business rule logic – everything is a triple. © Jayzed Data Models Inc. 2016

4 Legislative context of USC and CFRThe use case diagram depicts the legislative processes and government actors that FRO is interested in The use case diagram depicts the legislative processes and government actors that FRO is interested in. Codification and Publication produce the official version of laws and regulation. US Congress enacts the Law. The original bills passed are input for Rulemaking and Codification. FRO doesn’t hold the bills, but rather revised and codified positive version. Office of the Law Revision Council codifies the law has an XML available for download. The financial regulators, SEC, FED and others are authors of Code of Federal Regulations. Government Publishing Office make the Code of Federal Regulations available in XML. The next pages show how FRO captures government actors and processes as static reference data. © Jayzed Data Models Inc. 2016

5 US Congress and Lawmaking in the ontologyLKIF and FRO ontology classes hold the Lawmaking use case. The diagram shows instance at the left and their classes, (rdf:type property) to the right. The Supervisory mandate connects to the SEC. The United States Congress is a LKIF Legislative Body. The LKIF Act of Law is the passing of a bill. That is when Dodd Frank and the Investment Adviser Act became Law. The Act of Law authorizes the Securities and Exchange Commission(SEC) to supervise Advisers (the Investment Funds). The FRO Supervisory Mandate is a subclass of LKIF Mandate, with a Regulatory Authority (the SEC) as an actor. © Jayzed Data Models Inc. 2016

6 Regulators and Rulemaking in the ontologyLKIF and FRO ontology classes hold the details of the Rulemaking use case. The diagram shows instance at the left and their classes, (rdf:type property) to the right. CFR Title 17, Rule and Regulations, Investment Adviser Act holds the actual text. The Securities & Exchange Commission is a FRO Regulatory Authority, a subclass of FRO Executive Body, which is a subclass of LKIF Public Body. The SEC is lkif:actor of the Rulemaking. The SEC’s the 2012 amendment of rules for Investment Adviser Act of 1940 is a FRO Rulemaking. Rulemaking, Codification and Publishing are LKIF Public Acts, a subclass of LKIF Action and Process. The Rulemaking creates a LKIF Definitional Expression. LKIF differentiates Expressions from the Process. The LKIF Definitional Expression bears a Medium. The medium is the actual document. CFR Annual Edition 2016 Title 17 is the FRO Edition. An update of the rules will have a new instance of the edition. © Jayzed Data Models Inc. 2016

7 Codification of the Law in the ontology“Positive law codification by the Office of the Law Revision Counsel is the process of preparing and enacting a codification bill to restate existing law as a positive law title of the United States Code.” 1 FRO has the Office of the Law Revision Council (OLRC) has a LKIF Legislative Body, because it works for Congress. “USC_ ” is the FRO Codification process, a subclass of LKIF Public Act. The Definitional Expression US Advisor Act is created by the codification. The expression is held by OLRC thus in turn by Congress. The medium that bears the expression is the Release Point of 29 July FRO Edition is subclass of LKIF Statute, which is subclass LKIF Legal Document “usc-t12-ch17:id81a43…” is the instance of the FRO USC Title, root of over 1,100 components with the text of the law. © Jayzed Data Models Inc. 2016

8 Publication of Regulations in the ontologyThe Government Publishing Office (GPO) makes regulations and laws available to the public. The design pattern follows Lawmaking, Rulemaking, and Codification. The GPO is a FRO Government Office, a subclass of LKIF Executive Body and sibling of FRO Regulatory Authority. The Government Publication – US Investment Adviser regulation is a FRO Government Publication, sibling of Rulemaking and Codification. All subclass of LKIF Public Acts, a subclass of LKIF Action and Process. LKIF Definitional Expression was created by the SEC Rulemaking Process we looked at before. It is the resource for the Government Publication. Both are linked to the same version of the text, CFR Annual Edition Title 17. Note: GPO also publishes PDF and text versions of the United States Code. The Office of the Law Revision Council publishes the XML version in addition. For purposes of Financial Regulation we don’t need to model all intricacies of the Use Cases. Just the context of our XML sources. © Jayzed Data Models Inc. 2016

9 The SEC Mandate in contextThe diagram shows LKIF instances to define semantics of the IAA legal background. Congress enacted (actor) the 1940 Investor Adviser Act and the Dodd-Frank Act. There are two instances each: The Act and the Statute. The Statute bears the text of the Act of Law passed in congress. The laws contain provisions that give the Security and Exchange Commission a mandate to supervise Investment Advisers. The SEC enacted a Rulemaking (IAA amended P.L ). In other words, the SEC announced the final version the regulation. The US Investment Advisers regulation bears the text of the rules (e.g. CFR-2012-title 17-vol3 part 275). Jayzed Data Models © 2016

10 Main FRO/LKIF classes in contextThe graph shows some of the LKIF and HFR classes for the instances. Solid yellow dots represent primitive classes. Existential ‘some’ restriction universal ‘only’ restriction Legislative Body is the class for US Congress. The Executive Body holds the SEC and other Regulatory Authorities. An existential restriction ties the Legislative Body to the Act of Law. The US IIA and Dodd-Frank are an acts of law. The Act of Law contains a Supervisory Mandate. A class restriction refers to the Executive Body that got the mandate. Corresponding to the Act of Law we have a class for the Rulemaking. The Regulation class anchor for rules. Jayzed Data Models © 2016

11 Data sources for laws and regulationsFRO sources XML for the United States Code from OLRC and the Code of Feral Regulations XML from GPO. United States Congress enacted the Investor Adviser Act in 1940 to monitor and regulate the activities of Investment Advisers. https://www.sec.gov/about/laws/iaa40.pdf The act placed mutual funds, closed-end funds, unit investment trusts, and exchange-traded funds under SEC regulation and supervision. The 2010 Dodd Frank Act (DOF), Title IV required most Hedge and Private Equity Funds to register with the SEC. Full text: https://www.sec.gov/about/laws/wallstreetreform-cpa.pdf The Office of the Law Revision Counsel (OLRC) of the US House of Representatives codifies and publishes the United States Code. As Positive Law the OLRC provides the latest version of the act including all changes and amendments. The OLRC website has the current laws available for download on their website: FRO uses the OLRC XML Title 12 and 15 as a data source. The Security and Exchange Commission implements the law. The SEC revises the Code of Federal Regulation with detailed instructions, forms, and procedures. The SEC hands over the new CFR to GPO for publication. The SEC supervises Investment Companies and Advisers. Note: For Banking the Federal Reserve is the main regulator. We cover the SEC in this tutorial, but the integration is the same. The Government Publishing Office is the official source for Federal Government information. The “bulk” data is available in on the Federal Digital System (FDSys). https://www.gpo.gov/fdsys/bulkdata/CFR/2016 The XML schema and a user guide are also available. FRO uses GPO XML files as a source for CFR. © Jayzed Data Models Inc. 2016

12 CFR and USC in FinRegOnt ontology filesFinancial Regulation Ontology instance files contain the text of laws & regulations relevant to Investment and Banking. United States Code Title Chapter 12 Banks and Banking 17 Bank Holding Companies 53 Wall Street Reform and Consumer Protection 15 Commerce and Trade 275 Investment Companies and Advisers Code of Federal Regulations Title Chapter Part 12 Banks and Banking II Federal Reserve System 217 Capital Adequacy of Board Regulated Institutions 225 Bank Holding Companies and change in Bank Control (Regulation Y) 252 Enhanced Prudential Standards 17 Commodity and Securities Exchanges Securities and Exchange Commission 275 Rules and Regulations, Investment Advisers Act of 1940 FRO_USC_Title_12_Chapter_17.ttl FRO_USC_Title_12_Chapter_53.ttl FRO_USC_Title_15_Chapter_2D.ttl FRO_CFR_Title_12_Part_217.ttl FRO_CFR_Title_12_Part_225.ttl FRO_CFR_Title_12_Part_252.ttl FRO_CFR_Title_17_Part_275.ttl © Jayzed Data Models Inc. 2016

13 FRO Semantic Integration modelsThis section describes the architecture moving Legal Sources into the Financial Regulation Ontology. The Data Integration process is similar to traditional Warehouses. We adopt the Giordano’s integration modelling approach (Anthony David Giordano Data Integration Blueprint and Modeling, IBM Press 2011)1 High Level Conceptual Semantic Integration Model The “database” symbols stand for persistent storage in general. The rectangles denote a process. Data sources can have various formats: Ontology files, XML, Spreadsheets, RDF Databases, any data source with JDBC connectivity. We use TopBraid Maestro1 to import XML, but the Protégé and RDF Database environment also provide imports. RDF Staging and Target Ontology can be OWL files or graphs in a RDF Database. The Ontology Extract imports the Data Source and stores it in a “dumb” RDF Staging representation. The Ontology Transformation operates completely in the Semantic environment. The transformation logic is encoded in SPARQL rules. We use TopBraid SPIN2, but Protégé and RDF Database environments also support SPARQL based rules. RDF Staging is critical to the architecture and should not be bypassed. We do not want to encode business logic in the Extract process. We want uniform staging classes and utilize semantic transformation not matter what the data source is. © Jayzed Data Models Inc. 2016

14 Semantic integration Logical ModelUnited States Code Financial Regulation Ontology FRO RDF Staging Title 12 Banks & Banking Chapter 17 Bank Holding Companies Chapter 53 Wall St. Reform & Consumer Protection Title 15 Commerce & Trade Chapter 2D Investment Companies & Advisers Extract the USC source data. Import into United States Legislative Model (USLM) classes. Transform USLM/FDSys staging instances. Load the information into ontology classes. The inference engine executes rules attached to the source class: Mapping rules perform simple triple movement. SPARQL rules CONSTRUCT complex transformations. USC_USLM_Schema uslm:title uslm:chapter uslm:section uslm:paragraph uslm:note CFR_FDSysElement cfr-fdsys-s:TITLE cfr-fdsys-s:PART cfr-fdsys-s:SECTION cfr-fdsys-s:P (paragraph) FRO Legal Reference Document Component Title Chapter Chapter Division Section Paragraph divides refers to Heading Subject Text Identifier Code of Federal Regulations Extract the CFR source data. Import into Federal Digital System (FDSys) classes Title 12 Banks & Banking Part 217 Capital Adequacy Part 225 Bank Holding Companies Part 252 Prudential Standards Title 17 Investment Adviser Act Part 275 Rules & Regulations © Jayzed Data Models Inc. 2016

15 Code of Federal Regulations Physical Load ModelWhile the Logical integration model referred to persistent storage, business concepts and ontology classes, the Physical Load Models names the websites and files. https://www.gpo.gov/fdsys/bulkdata/CFR/ https://finregont.com/fro/cfr/ XSD Import XML Schema Export RDF graph Strip generic classes RDF/OWL (TTL) CFRMergedXML CFR_FDSys_Schema xsi:schemaLocation owl:imports XML RDF/OWL (TTL) Open as Semantic XML Document Export RDF Graph Import CFR_FDSys Strip schema elements CFR-2015-title12-vol2-part217 CFR-2015-title12-vol3-part225 CFR-2013-title12-vol4-part252 CFR-2012-title17-vol3-part275 CFR-2015-title12-vol2-part217 CFR-2015-title12-vol3-part225 CFR-2013-title12-vol4-part252 CFR-2012-title17-vol3-part275 We download CFR XML files and schema from the GPO website, bulk data directory. The ontology editor imports the XSD and converts XML to a Semantic view. We export the both RDF Graphs to target OWL (turtle) files. For staging we want a single OWL file with class definitions for the CFR concepts (Section Paragraph Note etc.) All four instance data files import the common class definitions. © Jayzed Data Models Inc. 2016

16 Understanding the CFR XML SourceWe follow “Private Fund Exception” in section 203 of CFR-2012-title17-vol3-part275 from XML to FRO ontology. The GPO website provides the XSD-Schema and documentation CFRMergedXML.xsd CFR-XML_User-Guide_v1.pdf The XSD Schema is generic for all Federal Regulations. A good example of the Semantic Web Layers discussed previously. We get the machine readable syntax, but no semantics for the particular regulation. The header contain identifying information about the document xsi:noNamespaceSchemaLocation="CFRMergedXML.xsd"> 17 Commodity and Securities Exchanges 3 false RULES AND REGULATIONS, INVESTMENT ADVISERS ACT OF 1940 275 PART 275 Commodity and Securities Exchanges SECURITIES AND EXCHANGE COMMISSION (CONTINUED) The regulation text is structured in sections.

Section number with the paragraph reference Subject of the section And individual paragraphs

.

§ (m)-1 Private fund adviser exemption.

(a) United States investment advisers. For purposes of section 203(m) of the Act (15 U.S.C. 80b-3(m)), an investment adviser with its principal office and place of business in the United States is exempt from the requirement to register under section 203 of the Act if the investment adviser:

(1) Acts solely as an investment adviser to one or more qualifying private funds; and

(2) Manages private fund assets of less than $ million.

Jayzed Data Models © 2016

17 Generating OWL classes from CFR XSDTopBraid Composer Maestro Edition11 (TBC) is our main ontology editor. First we import the XSD-Schema. There are various options to customize the import. The tool creates on OWL file CFRMergedXML.ttl with classes for the XSD elements. We open CFR-2012-title17-vol3-part275.xml with TCB’s “Semantic XML”. This show instances of the classes with the actual XML text fragments. Note that this is only a semantic rendition. The underlying file is still XML. Finally we export the graph to create save it as OWL. This is for convenience and performance, so we don’t have to repeat the import steps. We use the same filename, but with extension TTL: CFR-2012-title17-vol3-part275.ttl Jayzed Data Models © 2016

18 Imported CFR FDSys classes & propertiesThe ontology browser shows CFR-2012-title17-vol3-part2752.ttl Classes and Properties. We create the namespace “cfr-fdsys-s”. (showing left of the colon on the classes/properties). We use a collection class, CFR_FDSysElement as a superclass for all CFR classes. The import creates 3 properties (prefix “composite”, preserve the XML structure: Object property “composite:child” denotes that a domain instance is underneath the range. For example “Part 275” has composite:child Section “§ ”. Object property “composite:parent” denotes the inverse. Data Property “composite:index” adds a sequence number to child elements. So we can preserve an query the order of paragraph within a Section. © Jayzed Data Models Inc. 2016

19 Comparing the XML to OWL instance and class structureThe diagram shows the “Private Fund Exception”, 203 of CFR-2012-title17-vol3-part275 graph. The XML

becomes an instance of cfr-fdsys-s:SECTION class. The XML elements within the section are generated as instances connected with the composite:child object property: Every section has a section number, cfr-fdsys-s:SECTNO and subject, cfr-fdsys-s:SUBJECT. Paragraphs become instances of cfr-fdsys-s:P Object property composite:child connects the instances.
§ (m)-1 Private fund adviser exemption.

(1) Acts solely as an investment adviser to one or more qualifying private funds; and

(2) Manages private fund assets of less than $150 million.

Jayzed Data Models © 2016

20 Instance details in the resource formWe can introspect all details of “Private Fund Exception” in the Form tab. The top of the window shows path and name of the open OWL file. FinRegOnt sets the prefix as cfr , title and part of the code of federal regulations. The import generates a URI for the instance: cfr :r-0-9. “r” denotes resource. The numbers are generated based on the hierarchy level. We use an import generated URI, because the CFR XML doesn’t come with an ID element. For United States Code we use the element Identifier in the XML. The composite index means that section “§ (m)-1” is the 17th child element under the parent (Part 275). Under composite:child we find section number, subject and paragraphs. We expand paragraph (1) – “Acts solely as an investment adviser to one of more private funds ….” Again, the child elements have a composite index. We use the index number to query the paragraphs in the right order. All text fragments are stored as sxml:TextNode, a generic Semantic-XML class with text and composite index. We use will the index number to concatenate the text fragments into the full text of a paragraph. To use the data warehousing ETL analogy, this is just an Extract of into simple Staging classes. rather than ontology design. There are no semantics and it is hard and error prone to SPARQL query the data. We will transform the staging structure and load into LKIF classes. First we revisit the reference ontology and extend the design. Then we use SPIN rules to move the instances. © Jayzed Data Models Inc. 2016

21 CFR to FRO/LKIF Physical Transform ModelThe Physical Load model shows the source files and target files in the Financial Regulation Ontology. Prerequisite of the Semantic ETL is a mapping from CFR_FDSys_Schema.ttl to the target classes in Code_Federal_Regulations.ttl. The target ontology imports US_Legal_Reference.ttl, an ontology common to CFR and USC and Legal_Reference.ttl, common to international regulations. Legal_Reference.ttl imports LKIF. https://finregont.com/fro/cfr/ https://www.estrellaproject.org/lkif-core Map source classes to target OWL (TTL) RDF/OWL (TTL) Code_Federal_Regulations US_LegalReference LegalReference lkif-extended CFR_FDSys_Schema owl:imports owl:imports Transform complex structures We create a target instance ontology file for very staging file. E.g. FRO_CFR_Title12_part_275.ttl for CFR-2012-title17-vol-3-part275.ttl The target files only contain class and property instances. They all import the common schema, Code_Federal_Regulations.ttl RDF/OWL (TTL) OWL (TTL) CFR-2015-title12-vol2-part217 CFR-2015-title12-vol3-part225 CFR-2013-title12-vol4-part252 CFR-2012-title17-vol3-part275 FRO_CFR_Title_12_Part_217 FRO_CFR_Title_12_Part_225 FRO_CFR_Title_12_Part_252 FRO_CFR_Title_17_Part_275 Execute Load from source to target instance © Jayzed Data Models Inc. 2016

22 Identifying and extending the LKIF target for CFRWe extend the model of the US Legal Context, described in previous slides to accommodate the CFR elements. Slide SEC Mandate in context defined the SEC as a LKIF Executive Body and Financial Regulation as an outcome of its Rulemaking. fro-cfr:CodeFederalRegulations is a subclass of Financial Regulation. CFR_Component is a collection class for all CFR element classes. The top class, CFR_Title is also member of the Document Edition, described in Codification of the Law in the ontology. The object property fro-leg-ref:divides creates the hierarchy of CFR_Components. Paragraphs divide the Sections. Section divides the Part. Part divides the Chapter and finally Chapter divides the Title. We create a class restriction: CFR_Paragraph divides some CFR_Section Next pages show, how to transform the staging data and load into LKIF classes. First we look at ETL in the Semantic world. How to use SPARQL and TopBraid SPIN 2 rules to move the instances. © Jayzed Data Models Inc. 2016

23 Mapping Rules in SPARQLThe CONTRUCT statement is the equivalent of the INSERT in a relational database. We use SPARQL CONTRUCT statements to load the data into our target classes. “The CONSTRUCT query form returns an RDF graph. The graph is built based on a template which is used to generate RDF triples based on the results of matching the graph pattern of the query.” (W3C SPARQL Query Language for RDF) CONSTRUCT { ?targetInstance fro-cfr:hasParagraphText ?text . } WHERE { ?this composite:child ?text_node . ?text_node a sxml:TextNode . ?text_node sxml:text ?text . BIND (spinmap:targetResource(?this, cfr-context-spin:P-CFR_Parapraph) AS ?targetInstance) . The example creates triples (an RDF graph) for the hasParagraphText property. We have two variables: ?targetInstance of our destination fro-cfr:CFR_Paragraph ?text The actual text that we and to construct for the CFR_Paragraph instance. The WHERE clause specifies the result set from our Source ontology classes. This is similar to SQL “INSERT … AS SELECT”. ?this is a special variable that refers to the current instance of this class that is being evaluated by the inference rule. For every instance of our source “cfr-fdsys-s:P” we navigate to “sxml:TextNote” and assign the “sxml:text” property to our ?text variable. The BIND keyword assigns the value of an expression to a variable. In this case, we call a function to convert the URI of ?this to the target URI. Jayzed Data Models © 2016

24 SPIN – SPARQL Inferencing NotationWith TopBraid Composer as ontology editor, we use SPARQL Inference Notation, SPIN to define mapping rules. “SPIN is a W3C Member Submission that has become the de-facto industry standard to represent SPARQL rules and constraints on Semantic Web models. SPIN also provides meta-modeling capabilities that allow users to define their own SPARQL functions and query templates. Finally, SPIN includes a ready to use library of common functions.” (http://spinrdf.org/ ) “SPINMap is a SPARQL-based language to represent mappings between RDF/OWL ontologies. These mappings can be used to transform instances of source classes into instances of target classes.”3 There are no mapping spreadsheets or proprietary ETL files. The mapping file is in Ontology Web Language. That means, we can query target schema and data joined with the mapping to their source. Source Target CFR-2012-title17-vol-3-part275 FRO_CFR_Title_17_Part_275 owl:imports owl:imports Mapping file (TTL) CFR17_275spinFRO We create a new RDF/SPIN mapping file, CFR17_275spinFRO.ttl in TopBraid Composer. The mapping file imports the required SPIN MAP elements, to support mapping rules and editor. Next we import the source ontology, CFR-2012-title-17-vol-3-part275.ttl and target, FRO_CFR_Title_17_Part_275.ttl Now we have visibility of source and target classes in our mapping ontology. We invoke the mapping editor. Jayzed Data Models © 2016

25 SPIN – SPARQL Inferencing NotationWith TopBraid Composer as ontology editor, we use SPARQL Inference Notation, SPIN to define mapping rules. The diagram shows the CFR Paragraph mapping from staging, cfr-fdsys-s:P to target fro-cfr:CFR_Paragraph: We connect the two classes with a “change namespace” mapping rule. For every source instance, this will create a target instance with the URI namespace The second rule copies data property composite:index to the target fro-leg-ref:hasSequenceNumber. The mapping contexts for CFR Paragraph, Section and Note are stored as an instance of spinmap:Context. Jayzed Data Models © 2016

26 SPIN mapping context connecting classesConnecting a source to a target class invokes the mapping rule dialog. The Target Function specifies how to create the target URI. For CFR Paragraph we simply change the namespace. The Preview window shows how source instances are converted to target URI. The Result column shows the prefix fro-cfr-t17-p275 and instances r , r The SPARQL Expression is the WHERE clause for the CONSTRUCT statement. The first BIND extracts the local name (right of the colon) of the source URI. The second BIND concatenates the local Name to the target namespace. © Jayzed Data Models Inc. 2016

27 SPIN rules populating properties (1)Once defined, the mapping context will be used to populate data and object properties. The spinmap-rules can be examined and customized at the source class’ Form tab. The inference engine (reasoner) will trigger the rules for every instance of the class. The rules “Map into” the mapping context with a “derive” rule: Derive the target fro-leg-ref:hasSequenceNumber from source composite:index, cast the value to xsd:integer. Likewise spin-rules show at the source class’ Form tab. Spin-rules are free form SPARQL that we the inference engine to execute. In this case we want to CONSTRUCT the fro-cfr:hasParagraphText data property. The WHERE clause navigates from the ?this instance to the sxml:TextNode. The BIND statement assigns the target instance using the Mapping Context. © Jayzed Data Models Inc. 2016

28 SPIN rules populating properties (2)Templates facilitate reuse of common SPARQL rule statements. All FinRegOnt instances have an object property to point to their source instance: fro-leg-ref:hasSourceInstance. The CONSTRUCT sets the domain target instance and ?this variable range. The WHERE clause assigns the ?targetInstance variable. The first BIND extracts the local name (right of the colon) of the source URI. The second BIND concatenates the local Name to the target namespace. © Jayzed Data Models Inc. 2016

29 Running the Inference EngineThe inference engine executes SPIN-rule alongside standard reasoning. An inference engine is a software able to infer new facts from a set of asserted facts and rules. Non-ontology Inference engines are also to derive decision based on business rules (rules engine). The reasoner generalizes the concept with a richer, ontology based semantic. Input Asserted Triples are facts in the included staging file CFR-2012-title17-vol-3-part275.ttl. The TopSPIN (SPARQL Rules) are in the mapping file: CFR17_275spinFRO.ttl We run the engine from the TopBraid composer Menu or Button. The engine iterates trough standard reasoning for class subsumption. That is to infer that an instance must be type of a class based on its asserted properties. Chapter I of the tutorial touched how the defined class drives the reasoner. Chapter III will explain the central role of reasoning for financial compliance. The TopSPIN engine will also execute the SPIN rules. The status window shows rule “STEP001: set Paragraph Text” on cfr-fdsys-s:P For all instances of cfr-fdys:P the engine will execute the SPARQL and CONSTRUCT output triples. The iteration (7) means that this is the seventh pass of the engine. As configured the reasoner will iterate until there are no more new triple inferred. © Jayzed Data Models Inc. 2016

30 Inferencing Output TriplesThe Inferences tab shows the output triples in three columns, subject, predicate, and object. We scroll down the Subject column fro-cfr-t17-p275:r , the Private Fund Adviser paragraph and Look at Predicate column for object and data properties of the paragraph: Object Property hasSourceInstance, links to the CFR FDSys original (Object column). Paragraph text is sub property of Component Text. The engine infers a triple for the component text. It has a sequence number: 3 It has a text: “Acts solely ….” The paragraph is a fro-cfr:CFR_Paragraph © Jayzed Data Models Inc. 2016

31 Validating target instance – class browserOnce the inferencing is complete, the class browser will indicate the number of triples next to the Code of Federal Regulations Classes. This is the first consistency check. The number of target instances should match the number of elements in the CFR XML. Title 17 Part 275 has 2 Chapters, 44 Sections, 757 paragraphs and 16 Notes. We select CFR_Section and the instances tab shows the individual sections. Scope: FinRegOnt does not import everything from the CFR XML source. For our purpose of Legal Reasoning, we are interested in the text and structure of the regulation. The lowest level is the paragraph or note that we want to link via object properties to a Legal Expression. We do not need the XML table of contents and formatting. However, the hasSourceInstance property links to the source instance, where all details remain available for querying. © Jayzed Data Models Inc. 2016

32 Validating target instances – Resource FormThe Resource Form displays all details of a class instance. This is the next step in checking consistency of the rule output. We double click on Section 17, § (m)-1 in resource list to launch the resource from. The class instance has a citation, [76 FR 39703, July6, 2011]. Note that SECTION has a SPIN-rule to populate the citation from its composite:child cfr-fdsys-s:CITA. The section number § (m)-1 , populated from cfr-fdsys-s:SECTNO The section subject “Private fund adviser exemption, populated from cfr-fdsys-s:SUBJECT Section 17 is divided_by many paragraphs (only 3 are displayed here). A rule on SECTION constructs from SECTION composite:child with type of cfr-fdsys-s:P The section divides Part 275 of the Code of Federal Regulations. The construct is static, because there is only one CFR Part in our source XML. The component name is parent property of section subject. Siblings are Part text, Volume text, Chapter text and Title text. This facilitates queries across CFR Components. The value is inferred automatically. We do not need a rule. A rule sets the source instance to the original cfr-fdsys-s:SECTION resource. Section 17 has a note. The object property fro-leg-ref:refers_toNote links to the fro-cfr:CFR_Note instance. The FinRegOnt documentation has definitions for all classes and properties on the website: © Jayzed Data Models Inc. 2016

33 Validating target instances – the GraphThe Semantic Data Management provides complete traceability and linage. Everything is a triple. We can navigate and query data instance, Section § (m)-1 to Source, Mapping and Reference Data. We start with the Section fro-cfr-t17-p275:r-1-17, “Private fund adviser exemption”. The object property fro-leg-ref:divides navigates to the higher CFR components, Part, Chapter and Title. Regulation instance fro-cfr:CFR_Title-17 has object properties to the Reference Data. Title 17 is a lkif-mereo:member_of the CFR edition. lkif-mereo:bears the Securities & Exchange Commission expression of the regulation. The two anchor points let us query all information described in the Legislative Contact. Reference Data: Links to Legislative environment Source: Section and Paragraph Imported GPO XML file Regulation instances: Section data imported from the Source ontology The section instance has the object property fro-leg-ref:has SourceInstance pointing to its original Section. With it we can join to all imported CFR FDSys classes and properties. The rdf:type of the section instance is spinmap:targetClass for the mapping. From here we navigate to the spinmap:sourceClass. Mapping: CFR context has the mapping © Jayzed Data Models Inc. 2016

34 Querying the meta data We can query the graph joining our section with reference-, source, and mapping data. SPARQL query The query traverses the complete meta-data graph, starting with the section. Variables “?” and object properties perform the joins. Query Result Set The query is a star “*”, so all query variables show in the result set. The query can be customized to include more or even all sections. (modify or omit the BIND statement). Because everything is a triple within the ontology, we have a whole meta-data repository at hand. SELECT * WHERE { BIND (fro-cfr-t17-p275:r-1-17 AS ?froSection) . #reference data ?froSection fro-leg-ref:divides ?froPart . ?froPart fro-leg-ref:divides ?froChapter . ?froChapter fro-leg-ref:divides ?froTitle . ?froTitle lkif-expr:bears ?definitionalExpression . ?froTitle lkif-mereo:member_of ?edition . # source ?froSection fro-leg-ref:hasSourceInstance ?source . ?source composite:child ?cfrNumber . ?cfrNumber a cfr-fdsys-s:SECTNO . # mapping ?froSection a ?froTargetClass . ?spinContext spinmap:targetClass ?froTargetClass . ?spinContext spinmap:sourceClass ?cfrSourceClass } [froSection] fro-cfr-t17-p275:r-1-17 froPart fro-cfr:CFR_Title-17_Part-275 froChapter fro-cfr:CFR_Title-17_Chapter-2 froTitle fro-cfr:CFR_Title-17 definitionalExpression fro-leg-ref:Definitional_Expression_US_AdvisorRegulation edition fro-cfr:CFR_Annual_Edition_2016_Title_17 source cfrNumber § (m)-1 froTargetClass fro-cfr:CFR_Section spinContext cfr-context-spin:SECTION-CFR_Section cfrSourceClass cfr-fdsys-s:SECTION © Jayzed Data Models Inc. 2016

35 Asserting the mapped triplesThe populated FRO instances are still inferences. To make them permanent, we assert them to the target file. Dynamic/volatile Data should be inferred at runtime An ontology that needs the populated sections and paragraphs can simply import the mapping file. That means the mapping rules will be executed every time we invoke the reasoner. This is desired for volatile information. The triples are temporary and ‘lost’ when we close the file. Dynamic strategies keep the target ontology in sync with the source. The cost is computing time of the inference engine. For CFR we assert the triples to a new file: FRO_CFR_Title_12_Part_275.tll All ontology environments have routines to export inferences, results to a new graph. A challenge is to separate wanted from unwanted inferences. See our earlier example, fro-cfr-t17-p275:r , the Private Fund Adviser paragraph: We only want the rules output, new FRO class instances and their properties. We do not want derived inferences, like subsumption to parent classes and properties. They should be inferred in the target ontology, because the target schema may change. For the Financial Regulation Ontology, we explicitly move triples using SPARQL Motion. Static and slowly changing data should be asserted For data that does not change often, we don’t want to spent reasoner time. This pertains to static reference data, transactions, and history. The reasoner does not have to re-compute the transformation rules. The triples are permanent. This means that changes to the source are not reflected in the target ontology automatically. Jayzed Data Models © 2016

36 SPARQL Motion – scripting language“SPARQLMotion is an RDF-based scripting language with a graphical notation to describe data processing pipelines.”3 CONSTRUCT { ?section a fro-cfr:CFR_Section . } WHERE { “The basic idea of SPARQLMotion is that individual processing steps can be connected, so that the output of one step is used as input to the next. RDF graphs are the basic data structure that is passed between the steps, but named variables pointing to RDF nodes and XML documents can also be passed between steps. The behavior of each module is typically driven by SPARQL queries, for example to iterate through result sets, to construct new RDF triples and to perform updates to RDF data sources.” SPARQL Motion is quite powerful and flexible – similar to ETL environments. The diagram shows a subset of the script to load the CFR rule inferences. Input for the script is an import of the CFR mapping file with inferences. RDF Processing elements are SPARQL CONSTRUCT statements that operate on the input triples. For example: CONSTRUCT { ?section a fro-cfr:CFR_Section .} WHERE { ?section a fro-cfr:CFR_Section The constructed triples become input for the next step. The final Export step specifies to write the output to FRO_CFR_Title_17_Part275.ttl © Jayzed Data Models Inc. 2016

37 Querying the Code of Federal RegulationsThe CFR “everything query” contains the main Code of Federal Regulations classes and data properties. We use the query to validate the data import for FRO resource files. The select joins the section with Reference data Section sequence number, source instance and subject. Section Notes and Citation Paragraph sequence number and text and enumeration text. We sort by section sequence than paragraph sequence. The query selects (almost) everything in FRO related to the Code of Federal Regulations. Besides validation, we run the query to export data into csv/MS-Excel format. Query file and Excel are in the website directory: SELECT * WHERE { ?edition fro-leg-ref:hasEditionText ?edition_text . ?edition lkif-mereo:member ?title . ?title fro-leg-ref:hasTitleText ?title_text . ?chapter fro-cfr:hasChapterText ?chapter_text . ?part fro-leg-ref:divides ?chapter . ?part fro-cfr:hasPartText ?part_text . ?section fro-leg-ref:divides ?part ; fro-leg-ref:hasSequenceNumber ?sectionSequence ; fro-cfr:hasSectionNumber ?sectionNumber ; fro-leg-ref:hasSourceInstance ?section_source ; fro-cfr:hasSectionSubject ?sectionSubject . OPTIONAL {?section fro-cfr:hasSectionCitation ?sectionCitation . } OPTIONAL { ?section fro-leg-ref:refers_toNote ?note . ?note a fro-cfr:CFR_Note . ?note fro-cfr:hasNoteText ?note_text . } ?para fro-leg-ref:divides ?section ; fro-leg-ref:hasSequenceNumber ?paraIndex ; fro-leg-ref:hasSourceInstance ?para_source ; fro-cfr:hasParagraphText ?paraText . OPTIONAL {?para fro-cfr:hasParagraphEnumText ?paraEnumText} } ORDER BY ?sectionSequence ?paraSequence © Jayzed Data Models Inc. 2016

38 CFR Section § 275.203(m)-1 query resultsThis is an excerpt of the query output Excel spreadsheet, filtered for section sequence number 17. We hide technical column to focus on the regulation content. Below section information is the same for all 1035 record. To the right, we see the Paragraphs. This query reconstitutes the text of the regulation as it is in the GPO PDF download. This concludes the tutorial on loading the Code of Federal Regulations. The United States Code is next. paraEnumText paraText United States investment advisers. (a) For purposes of section 203(m) of the Act (15 U.S.C. 80b-3(m)), an investment adviser with its principal office and place of business in the United States is exempt from the requirement to register under section 203 of the Act if the investment adviser: (1) Acts solely as an investment adviser to one or more qualifying private funds; and (2) Manages private fund assets of less than $150 million. Non-United States investment advisers. (b)For purposes of section 203(m) of the Act (15 U.S.C. 80b-3(m)), an investment adviser with its principal office and place of business outside of the United States is exempt from the requirement to register under section 203 of the Act if: (1) The investment adviser has no client that is a United States person except for one or more qualifying private funds; and (2) All assets managed by the investment adviser at a place of business in the United States are solely attributable to private fund assets, the total value of which is less than $150 million. Frequency of Calculations. (c)For purposes of this section, calculate private fund assets annually, in accordance with General Instruction 15 to Form ADV (§ of this chapter). Definitions. (d)For purposes of this section: Assets under management -1 means the regulatory assets under management as determined under Item 5.F of Form ADV (§ of this chapter). Place of business (2)has the same meaning as in § (a). Principal office and place of business (3)of an investment adviser means the executive office of the investment adviser from which the officers, partners, or managers of the investment adviser direct, control, and coordinate the activities of the investment adviser. Private fund assets (4)means the investment adviser's assets under management attributable to a qualifying private fund. Qualifying private fund -5 means any private fund that is not registered under section 8 of the Investment Company Act of 1940 (15 U.S.C. 80a-8) and has not elected to be treated as a business development company pursuant to section 54 of that Act (15 U.S.C. 80a-53). For purposes of this section, an investment adviser may treat as a private fund an issuer that qualifies for an exclusion from the definition of an “investment company,” as defined in section 3 of the Investment Company Act of 1940 (15 U.S.C. 80a-3), in addition to those provided by section 3(c)(1) or 3(c)(7) of that Act (15 U.S.C. 80a-3(c)(1) or 15 U.S.C. 80a-3(c)(7)), provided that the investment adviser treats the issuer as a private fund under the Act (15 U.S.C. 80b) and the rules thereunder for all purposes. Related person (6)has the same meaning as in § (4)-2(d)(7). United States (7)has the same meaning as in § (l) of this chapter. United States person -8 means any person that is a U.S. person as defined in § (k) of this chapter, except that any discretionary account or similar account that is held for the benefit of a United States person by a dealer or other professional fiduciary is a United States person if the dealer or professional fiduciary is a related person of the investment adviser relying on this section and is not organized, incorporated, or (if an individual) resident in the United States. part_text Part RULES AND REGULATIONS, INVESTMENT ADVISERS ACT OF 1940 sectionSequence 17 sectionNumber § (m)-1 sectionSubject Private fund adviser exemption. sectionCitation [76 FR 39703, July 6, 2011] note_text A client will not be considered a United States person if the client was not a United States person at the time of becoming a client. © Jayzed Data Models Inc. 2016

39 United States Code - Physical Load ModelThe USC Lead Model mirrors the CFR steps, however the structure of the law is more complex than regulations. There are many more components and variations in the hierarchy. https://finregont.com/fro/usc/ XSD Import XML Schema Export RDF graph Strip generic classes RDF/OWL (TTL) USLM USC_USLM_Schema xsi:schemaLocation owl:imports XML RDF/OWL (TTL) Open as Semantic XML Document Export RDF Graph Import CFR_FDSys Strip schema elements usc12_17 usc12_53 usc15_2D USC-2015-title12-chapter17 USC-2015-title12-chapter53 USC-2015-title15-chapter2D The Office of the Law Revision Council provides one XML file per USC Title (usc12.xml, usc15.xml). FRO only needs individual chapters - not the whole title. We used XMLSpy to spit the XML into chapter files. The XSD is called United States Legislative Model (USLM). We adopt the abbreviation for FinRegOnt staging schema. © Jayzed Data Models Inc. 2016

40 Understanding the USC XML headerThe USC header contains version, the schema include, and metadata about the document. The import into Financial Regulation Ontology Staging retains this information, but we only need selected elements for LKIF/FRO. The only XMLSpy edit to the was to remove chapters that we don’t need. The section has the document title, number. Publisher is the Office of the Law Revision Council (OLRC). The Publication name refers to the OLRC release point The files is as of The document body starts with the

tag. Just like in CFR, top-level component is the Title. The id field (see title and note) provides a unique identifier for all components. , that we will use to construct the URIs in FinRegOnt. Title 15 USCTitle 15 OLRC T08:37:20 USCConverter 1.1
</span> <span class='tr'><num value="15">Title 15—</num></span> <span class='tr'><heading>COMMERCE AND TRADE</heading></span> <span class='tr'><note topic="miscellaneous" id="idcfab2c6a-0c74-11e6-aa53-e455a13f2ad9"></span> <span class='tr'><p>Current through  </p></span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 41 </span> Understanding the USC XML main structure<span class='tr'>The USC main structure has more levels and content elements than CFR.</span> <span class='tr'>Our Private Fund Manager Exception is contained in a Subsection of 15 U.S. Code § 80b–3.</span> <span class='tr'>The XML has a rich set of formatting styles and a table of contents. Both is not needed in FRO for our purpose of Legal Reasoning and we don’t import them. They remain available in the staging RDF. We do import:</span> <span class='tr'>id The unique element identifier</span> <span class='tr'>identifier The human readable index of the element</span> <span class='tr'>heading The name/title of the element.</span> <span class='tr'>Section § 80b–3, breaks down into 14 subsections. Subsection b/1 defines exception to the registration requirement. The chapeau is an introductory text for the following lower levels. In this case a heading for the 7 paragraphs. Finally the content element contains the text.</span> <span class='tr'><section style="-uslm-lc:I80" id="idd04f5b5e-0c74-11e6-aa53-e455a13f2ad9"</span> <span class='tr'>identifier="/us/usc/t15/s80b–3"></span> <span class='tr'><num value="80b–3">§ 80b–3.</num></span> <span class='tr'><heading> Registration of investment advisers</heading></span> <span class='tr'><subsection style="-uslm-lc:I19" class="indent2 firstIndent-2"</span> <span class='tr'>id="idd04f5b5f-0c74-11e6-aa53-e455a13f2ad9“</span> <span class='tr'>identifier="/us/usc/t15/s80b–3/a"> </subsection> …</span> <span class='tr'>id="idd04f5b60-0c74-11e6-aa53-e455a13f2ad9"</span> <span class='tr'>identifier="/us/usc/t15/s80b–3/b"></span> <span class='tr'><num value="b" class="bold">(b)</num></span> <span class='tr'><heading class="bold"> Investment advisers who need not be registered</heading></span> <span class='tr'><chapeau>The provisions of subsection (a) shall not apply to—</chapeau></span> <span class='tr'><paragraph style="-uslm-lc:I12" class="indent1"</span> <span class='tr'>id="idd04f5b61-0c74-11e6-aa53-e455a13f2ad9"</span> <span class='tr'>identifier="/us/usc/t15/s80b–3/b/1"></span> <span class='tr'><num value="1">(1)</num></span> <span class='tr'><content> any investment adviser, other than an investment adviser who acts as an investment adviser to any private fund, all of whose clients are residents of the State within which such investment adviser maintains his or its principal office and place of business, and who does not furnish advice or issue analyses or reports with respect to securities listed or admitted to unlisted trading privileges on any national securities exchange;</content></span> <span class='tr'></paragraph></span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 42 </span> Imported USC USLM classes & properties<span class='tr'>The ontology browser shows USC-2015-title15-chapter2D.ttl Classes and Properties.</span> <span class='tr'>The XML header elements, creator, publisher, title, and type have been imported as classes with the “dc:” prefix.</span> <span class='tr'>The namespace refers to the Dublin Core resource metadata standard.</span> <span class='tr'>We create the namespace “uslm” (=United States Legislative Model, showing left of the colon on the classes/properties).</span> <span class='tr'>We use a collection class, USC_USLM_Schema as a superclass for all USLM classes. More than 10,000 instances have been created.</span> <span class='tr'>The properties list starts with object property composite:child/parent and the index - just like the CFR import.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 43 </span> Comparing the USC USLM § 80b–3 graph<span class='tr'>The diagram shows the instance graph for the Private Fund Exemption XML. The instance box text starts with the class name, for example “<uslm:section “. The connecting arrows, object property instances of composite:child show the hierarchy from Section via Subsection to Paragraph.</span> <span class='tr'>Section and Subsection have a heading, “Registration of Investment Advisers”. The “num” instance, child of section has numbering text § 80b–3. Section also shows the Source Credit and a Note.</span> <span class='tr'>The Subsection also has a Num and Heading “Investment Advisers who need not to be registered”. The Chapeau “Provisions of subsection (a) shall not apply to …” precedes the list of paragraphs.</span> <span class='tr'>Paragraphs have a Num value and content. The Num value helps to list the exceptions in the right order. Content can be a simple text or more complex structure as we shall see on transformation and query slides.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 44 </span> USC USLM Section § 80b–3 form details<span class='tr'>A double click on the section instance invokes the details dialog.</span> <span class='tr'>The instance is a uslm:section. The uslm:id-section is a unique identifier coming with the OLRC XML. We will use this ID to generate the FinRegOnt URL. The uslm:identifier-section is the human readable ID. It is structured as an index into the United States Code.</span> <span class='tr'>We ignore the uslm:style-section. The formatting can be retrieved from FinRegOnt Staging via the SourceInstance property.</span> <span class='tr'>The import generates the composite:index. As in CFR it sorts child elements with the same parent instance. I.e. our section is the 4th child of parent chapter instance.</span> <span class='tr'>The composite:child part shows all elements under our section. The uslm:num value is the human readable “number” of the element, § 80b–3. The heading is a short name/text for the element, “Registration of investment advisers.</span> <span class='tr'>Next children are all subsections. (CFR doesn’t have subsections). We expand subsection “b”. Just like sections, subsections have type, id, identifier, style and composite index.</span> <span class='tr'>The composite:child part shows num value and heading. The uslm:chapeau is an introductory text for the following sub-elements, the paragraphs.</span> <span class='tr'>The Subsection uslm:paragraph contain the text of Private Fund exemptions to the registration requirement.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 45 </span> USC to FRO/LKIF Physical Transform Model<span class='tr'>The Physical Load model is similar to CFR. The target ontology schema is United_States_Code.ttl.</span> <span class='tr'>We map the staging classes from USC_USLM_Schema.ttl to the target classes in United_States_Code.ttl. The target ontology imports US_Legal_Reference.ttl, Legal_Reference.ttl and lkif-extended.ttl. The imported LKIF, Legal Reference and US Legal Reference files are the same for law and regulations.</span> <span class='tr'>https://finregont.com/fro/usc/</span> <span class='tr'>https://www.estrellaproject.org/lkif-core</span> <span class='tr'>Map source classes to target</span> <span class='tr'>OWL (TTL)</span> <span class='tr'>RDF/OWL (TTL)</span> <span class='tr'>United_States_Code</span> <span class='tr'>US_LegalReference LegalReference</span> <span class='tr'>lkif-extended</span> <span class='tr'>USC_USLM_Schema</span> <span class='tr'>owl:imports</span> <span class='tr'>owl:imports</span> <span class='tr'>Transform complex structures</span> <span class='tr'>We create a target FRO instance ontology file for very staging file.</span> <span class='tr'>The design challenge for the FRO USC target ontology lies in the complexity of the USLM structure. For example:</span> <span class='tr'>What elements can have a USLM Paragraph?</span> <span class='tr'>Where do Clause and Sub clause appear?</span> <span class='tr'>What elements are composite child of Section?</span> <span class='tr'>RDF/OWL (TTL)</span> <span class='tr'>OWL (TTL)</span> <span class='tr'>USC-2015-title12-chapter17</span> <span class='tr'>USC-2015-title12-chapter53</span> <span class='tr'>USC-2015-title15-chapter2D</span> <span class='tr'>FRO_USC_Title_12_Chapter17</span> <span class='tr'>FRO_USC_Title_12_Chapter53</span> <span class='tr'>FRO_USC_Title_15_Chapter2D</span> <span class='tr'>Execute Load from source to target instance</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 46 </span> Analyzing the populated USC structure.<span class='tr'>To answer questions about the USC structure we query and pivot population of classes and the composite:child relationship.</span> <span class='tr'>The SPARQL SELECT returns Parent, Child class and the number of instances.</span> <span class='tr'>The first line in the WHERE clause populates all 10,261 instances of the composite:child object property into ?parent and ?child variables.</span> <span class='tr'>The next two lines navigate to the ?parent_class and ?child_class. The last line in the WHERE clause limits the result-set to subclasses of our USLM collection class, uslm:uscDoc. We GROUP the results BY parent and child class.</span> <span class='tr'>We run the query against the Investor Adviser Act staging ontology, USC-2015-title15-chapter2D.ttl</span> <span class='tr'>The result set show:</span> <span class='tr'>3 chapeaus have a note</span> <span class='tr'>10 chapeaus have a date element.</span> <span class='tr'>45 chapeaus have a reference</span> <span class='tr'>This analysis drives how we design the FRO class for chapeau. For instance, we can put an OWL restriction on chapeau and the parent classes. The actual population will also drive the validation query. The next slide shows an MS Excel pivot of the complete result set.</span> <span class='tr'>The top row shows the USLM parent classes.</span> <span class='tr'>The left column has the child classes</span> <span class='tr'>Cells contain the number of relationship per pair.</span> <span class='tr'>SELECT ?parent_class ?child_class (COUNT(*) AS ?instances)</span> <span class='tr'>WHERE {</span> <span class='tr'>?parent composite:child ?child .</span> <span class='tr'>?parent a ?parent_class .</span> <span class='tr'>?child a ?child_class .</span> <span class='tr'>?parent_class rdfs:subClassOf uslm:uscDoc .</span> <span class='tr'>?child_class rdfs:subClassOf uslm:uscDoc .</span> <span>}</span> <span class='tr'>GROUP BY ?parent_class ?child_class</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 47 </span> USC USLM Title 15, Chapter 2D element pivot<span class='tr'>Sum of total</span> <span class='tr'>Parent</span> <span class='tr'>Child</span> <span class='tr'>chapeau</span> <span class='tr'>chapter</span> <span class='tr'>clause</span> <span class='tr'>column</span> <span class='tr'>content</span> <span class='tr'>continuation</span> <span class='tr'>header</span> <span class='tr'>heading</span> <span class='tr'>inline</span> <span class='tr'>item</span> <span class='tr'>layout</span> <span class='tr'>main</span> <span class='tr'>meta</span> <span class='tr'>note</span> <span class='tr'>notes</span> <span>p</span> <span class='tr'>paragraph</span> <span class='tr'>proviso</span> <span class='tr'>quotedContent</span> <span class='tr'>section</span> <span class='tr'>sourceCredit</span> <span class='tr'>subchapter</span> <span class='tr'>subclause</span> <span class='tr'>subparagraph</span> <span class='tr'>subsection</span> <span class='tr'>title</span> <span class='tr'>toc</span> <span class='tr'>tocItem</span> <span class='tr'>uscDoc</span> <span class='tr'>Grand Total</span> <span>14</span> <span>59</span> <span>8</span> <span>1</span> <span>42</span> <span>85</span> <span class='tr'>209</span> <span class='tr'>126</span> <span>6</span> <span class='tr'>597</span> <span class='tr'>603</span> <span class='tr'>111</span> <span>4</span> <span class='tr'>427</span> <span>23</span> <span>39</span> <span class='tr'>218</span> <span class='tr'>175</span> <span class='tr'>997</span> <span>10</span> <span>5</span> <span>38</span> <span class='tr'>date</span> <span>2</span> <span class='tr'>263</span> <span>7</span> <span class='tr'>233</span> <span class='tr'>558</span> <span class='tr'>docNumber</span> <span class='tr'>docPublicationName</span> <span class='tr'>289</span> <span>84</span> <span>93</span> <span>50</span> <span class='tr'>809</span> <span>i</span> <span>3</span> <span>21</span> <span>24</span> <span>56</span> <span>19</span> <span>9</span> <span class='tr'>309</span> <span>82</span> <span class='tr'>num</span> <span class='tr'>514</span> <span>40</span> <span class='tr'>295</span> <span class='tr'>1358</span> <span class='tr'>271</span> <span class='tr'>685</span> <span class='tr'>956</span> <span>17</span> <span class='tr'>483</span> <span>25</span> <span class='tr'>ref</span> <span>45</span> <span class='tr'>367</span> <span class='tr'>197</span> <span>11</span> <span class='tr'>1278</span> <span>20</span> <span class='tr'>644</span> <span class='tr'>2566</span> <span>92</span> <span>36</span> <span class='tr'>261</span> <span class='tr'>286</span> <span class='tr'>sup</span> <span class='tr'>230</span> <span>62</span> <span class='tr'>540</span> <span class='tr'>234</span> <span class='tr'>993</span> <span class='tr'>1595</span> <span class='tr'>1355</span> <span class='tr'>696</span> <span class='tr'>878</span> <span>97</span> <span class='tr'>709</span> <span class='tr'>1351</span> <span class='tr'>10261</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 48 </span> Extending LKIF Norm-Statute for USC USLM<span class='tr'>Jumping ahead, the class and property browser show the outcome of our LKIF extensions.</span> <span class='tr'>The next pages will explain the design and population. Refer to the documentation for definitions of classes and properties:</span> <span></span> <span class='tr'>Financial Regulation Ontology classes have the prefix fro-usc.</span> <span class='tr'>The United States Code is a LKIF Statute. Both Statute and Regulation are LKIF Legal Documents* rolling up to Medium. The fro-usc:USC_Component is collection class for Level and Text entities.</span> <span class='tr'>11 USC_Level classes establish the hierarchy via the fro-leg-ref:divides object property.</span> <span class='tr'>4 USC_Text Element classes extend or annotate components via the fro-leg-ref:refers_to property, a subPropertyOf of lkif-mereo:part_of.</span> <span class='tr'>USLM Schema and User Guide available on the OLRC website (http://uscode.house.gov/download/download.shtml) and the pivot table is in the FinRegOnt query directory. They define the requirements for the design. For each USLM element we considered:</span> <span class='tr'>Major elements have a semantic importance indicated in the USLM documentation or have sufficient number of instances. They become USC Components. The distinction between Level and Text is structural in the XML Source.</span> <span class='tr'>USC Level elements have and Identifier, the human readable index.</span> <span class='tr'>USC Text Elements do not have an ID.</span> <span class='tr'>Minor elements have population of < than 10 instances.</span> <span class='tr'>Denormalized into data and/or object properties. Examples are the Notes collection and Content class.</span> <span class='tr'>Out of scope for FRO. We do not need table of content and formatting attributes. We skipped some elements with low population and unclear USLM definitions.</span> <span class='tr'>* Europe’s Alternative Investment Managers Directive (AIFMD) is a lkif-norm:Directive</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 49 </span> FRO USC class graph (1) Title to Subsection<span class='tr'>The United States Code hierarchy is more complicated than the Code of Federal Regulations.</span> <span class='tr'>The graph shows the USC levels from Title to Subsection.</span> <span class='tr'>USC Subchapter divides the Chapter, which in turn divides the Title. However, both Chapter and Subchapter can have Sections. Therefore the class restriction on USC_Section states OR.</span> <span class='tr'>fro-leg-ref:divides some (fro-usc:USC_Chapter or fro-usc:USC_Subchapter)</span> <span class='tr'>The Restriction refers to a UNION (or) of the classes.</span> <span class='tr'>fro-usc:USC_Chapter or fro-usc:USC_Subchapter</span> <span class='tr'>The UNION is a list of entities “[]”, referencing to Chapter and Subchapter.</span> <span class='tr'>We read the graph as follows: Section divides Chapters or Subchapters.</span> <span class='tr'>The Section can be broken down further into Subsections. The Subsection divides the Section (nothing else here).</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 50 </span> FRO USC class graph (2) Section to Subparagraph<span class='tr'>The lower elements in the USC hierarchy follow the same pattern.</span> <span class='tr'>Both Section and Subsection can have Paragraphs.</span> <span class='tr'>The Paragraph divides a Section or a Subsection.</span> <span class='tr'>Paragraphs can be further broken down into Subparagraphs.</span> <span class='tr'>The Subparagraph divides a Paragraph.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 51 </span> FRO USC class graph (3) leaf level elements<span class='tr'>The lowest level hierarchy elements are Clause, Subclause and Item.</span> <span class='tr'>The Clause is a text, usually preceded with a lower case roman numeral. Subsection and Subparagraph can contain clauses.</span> <span class='tr'>The Subclause divides a Clause or a Paragraph.</span> <span class='tr'>The Item is a text fragment in a list, such as a numbered or bullet point list. Both Clause and Subclause may contain Items.</span> <span class='tr'>This completes the USC hierarchy in the Financial Regulation Ontology. The FRO USC Text Elements, Chapeau, Continuation, Note and Quoted Content are not dividing the hierarchy. They are text elements that annotate any type of USC Level element. FRO does not define class restriction on them.</span> <span class='tr'>We continue with transformations to populate our target ontology.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 52 </span> Mapping the USLM schema to FRO-USC<span class='tr'>The steps defining the rules to transform USLM instance data and load into USC are similar to CFR mapping.</span> <span class='tr'>Create a new RDF/SPIN mapping file USC_15_2DspinFRO.ttl Import the source and target ontologies: USC-2015-title15-chapter2D.ttl and FRO_USC_Tile_12_Chapter_2D.ttl</span> <span class='tr'>Define a mapping context for each of the 15 FRO target classes in the Mapping Editor.</span> <span class='tr'>Connect data properties for simple 1:1 population.</span> <span class='tr'>Create SPIN-rules for complex data and object property transformations</span> <span class='tr'>Validate the results with introspection and queries.</span> <span class='tr'>To map the Paragraph we pull source and target class into the mapping editor.</span> <span class='tr'>Then we connect the classes to invoke the Context dialog.</span> <span class='tr'>For CFR our context was change namespace, but for USC we want to build the URI from the USLM ID.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 53 </span> Create the class mapping context<span class='tr'>The dialog shows the selected mapping function, argument, template, a preview of results and the SPARQL expression.</span> <span class='tr'>The Preview Results list box shows the target URIs - a concatenation of the namespace, prefix fro-usc and the value of the USLM ID data property.</span> <span class='tr'>The Target function, buildURI1 takes one argument. The other buildURI functions operate with multiple arguments, as in a composed key.</span> <span class='tr'>We use the default template, fro-usc:(?1). The variable, “?1” is a placeholder for the first argument.</span> <span class='tr'>The SPARQL expression returns the target IRI.</span> <span class='tr'>The first BIND assigns the value based ?source, an instance of uslm:Paragraph and the name of the data property.</span> <span class='tr'>The Second BIND calls the SPIN function to constructs a URI based on template and argument.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 54 </span> USC USLM mapping context Graph<span class='tr'>The mapping context is stored as an instance of spinmap:Context. The mapping diagram is the graph of context instances with their source and target class. (We only display 5 of the 15 contexts here).</span> <span class='tr'>We locate spinmap:Context in the class browser and click on the instance tab.</span> <span class='tr'>We select an instance and choose the Graph tab in the upper window. This will populate the graph with an instance. For example:</span> <span class='tr'>usc-15-2D-spin:paragraph-USC_Paragraph.</span> <span class='tr'>We expand the graph for source class and target class. This will populate ulsm:paragraph and fro-usc:USC_Paragraph.</span> <span class='tr'>We can expand the class for rdfs:subClassOf to display uslm:uscDoc and fro-usc:USC_Level.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 55 </span> USC USLM mapping context query<span class='tr'>Understanding the graph, we formulate a simple SPARQL to display the mapping information.</span> <span class='tr'>The query selects all spinmap:Context with their source and target classes.</span> <span class='tr'>SELECT ?source_class ?context ?target_class</span> <span class='tr'>WHERE {</span> <span class='tr'>?context a spinmap:Context ;</span> <span class='tr'>spinmap:sourceClass ?source_class ;</span> <span class='tr'>spinmap:targetClass ?target_class .</span> <span>}</span> <span class='tr'>[source_class]</span> <span class='tr'>context</span> <span class='tr'>target_class</span> <span class='tr'>uslm:chapeau</span> <span class='tr'>usc-15-2D-spin:chapeau-USC_Chapeau</span> <span class='tr'>fro-usc:USC_Chapeau</span> <span class='tr'>uslm:chapter</span> <span class='tr'>usc-15-2D-spin:chapter-USC_Chapter</span> <span class='tr'>fro-usc:USC_Chapter</span> <span class='tr'>uslm:clause</span> <span class='tr'>usc-15-2D-spin:clause-USC_Clause</span> <span class='tr'>fro-usc:USC_Clause</span> <span class='tr'>uslm: continuation</span> <span class='tr'>usc-15-2D-spin:continuation-USC_Continuation</span> <span class='tr'>fro-usc:USC_Continuation</span> <span class='tr'>uslm:item</span> <span class='tr'>usc-15-2D-spin:item-USC_Item</span> <span class='tr'>fro-usc:USC_Item</span> <span class='tr'>uslm:note</span> <span class='tr'>usc-15-2D-spin:note-USC_Note</span> <span class='tr'>fro-usc:USC_Note</span> <span class='tr'>uslm:paragraph</span> <span class='tr'>usc-15-2D-spin:paragraph-USC_Paragraph</span> <span class='tr'>fro-usc:USC_Paragraph</span> <span class='tr'>uslm:quotedContent</span> <span class='tr'>usc-15-2D-spin:quotedContent-USC_QuotedContent</span> <span class='tr'>fro-usc:USC_QuotedContent</span> <span class='tr'>uslm:section</span> <span class='tr'>usc-15-2D-spin:section-USC_Section</span> <span class='tr'>fro-usc:USC_Section</span> <span class='tr'>uslm:sourceCredit</span> <span class='tr'>usc-15-2D-spin:sourceCredit-USC_SourceCredit</span> <span class='tr'>fro-usc:USC_SourceCredit</span> <span class='tr'>uslm:subchapter</span> <span class='tr'>usc-15-2D-spin:subchapter-USC_Subchapter</span> <span class='tr'>fro-usc:USC_Subchapter</span> <span class='tr'>uslm:subclause</span> <span class='tr'>usc-15-2D-spin:subclause-USC_Subclause</span> <span class='tr'>fro-usc:USC_Subclause</span> <span class='tr'>uslm:subparagraph</span> <span class='tr'>usc-15-2D-spin:subparagraph-USC_Subparagraph</span> <span class='tr'>fro-usc:USC_Subparagraph</span> <span class='tr'>uslm:subsection</span> <span class='tr'>usc-15-2D-spin:subsection-USC_Subsection</span> <span class='tr'>fro-usc:USC_Subsection</span> <span class='tr'>uslm:title</span> <span class='tr'>usc-15-2D-spin:title-USC_Title</span> <span class='tr'>fro-usc:USC_Title</span> <span class='tr'>Everything is within the ontology.</span> <span class='tr'>Everything is a triple.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 56 </span> Transformations for USC Paragraph<span class='tr'>We run the inference engine and take a look at the populated instance for the Investment Adviser exemption paragraph.</span> <span class='tr'>This is the record populated from the § 80b–3 XML we examined earlier.</span> <span class='tr'>The USC_Paragraph class has 6 data properties:</span> <span class='tr'>fro-leg-ref:SequenceNumber: 3 Direct copy of the source value in composite:index</span> <span class='tr'>fro-usc:hasId: idd04f5b61-0c74-11e6-aa53-e455a13f2ad9 Direct copy from uslm:id-paragraph</span> <span class='tr'>fro-usc:hasIdentifierText: /us/usc/t15/s80b–3/b/1 Direct copy from uslm:identifier-paragraph</span> <span class='tr'>fro-usc:hasNumberText: (1) Custom Spin function to denormalize the uslm:num class instance into a data property</span> <span class='tr'>fro-leg-ref:hasComponentText: “any investment adviser, other than …” This is not an ETL rule. Fro-usc:hasContentText is rdfs:subPropertyOf this data property. Population is an automatic inference.</span> <span class='tr'>fro-usc:hasContentText: “any investment adviser, other than …” Custom SPIN-rule to denormalize the uslm:content class instance into a data property.</span> <span class='tr'>Object Properties:</span> <span class='tr'>fro-leg-ref:hasSourceInstance: “<uslm:paragraph style="-uslm-lc:I12" identifier="/us/usc/t15/s80b–3/b/1" id="idd04f5b61-0c74-11e6-aa53-e455a13f2ad9" ...> Custom SPIN function to set the source instance to ?this. (see CFR SPIN rule)</span> <span class='tr'>for-leg-ref:divides: idd04f5b60-0c74-11e6-aa53-e455a13f2ad9 The URI of the section that hold the Paragraph. A custom SPIN rule.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 57 </span> Using SPARQL templates for common transformations<span class='tr'>For data properties common across USC FRO classes, we use a template rule rather than duplicating the SPARQL code.</span> <span class='tr'>All USC_Component instances have a source instance and heading. All USC_Level instances have a data property for the number in the index. The SPARQL CONSTRUCTs only vary by the name of the USLM source class. We can pass the class name as an argument to a SPIN template.</span> <span class='tr'>The snippet shows the rules, SetHeading, SetNumberText and SetSourceInstance for uslm:paragraph in the class form. We take a close look at SetNumberText.</span> <span class='tr'>The template has a single Argument spl:predicate, an rdf:Property. At the bottom of the rule we see uslm:id-paragraph passed to the spl:predicate.</span> <span class='tr'>At execution the template statement line</span> <span class='tr'>?this ?predicate ?SourceId .</span> <span class='tr'>Will be replaced with the passed argument:</span> <span class='tr'>?this uslm:id-paragraph ?SourceId .</span> <span class='tr'>And we can construct the ?targetInstance with the USC identifier.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 58 </span> Paragraph transformations content text<span class='tr'>The USLM Paragraph is a generic structure. A query for the paragraph text sometimes involves several nested instances and variation.</span> <span class='tr'>FinRegOnt denormalizes into straight forward data and object properties, where appropriate.</span> <span class='tr'>The custom SPIN rule is attached to the source class uslm:paragraph. It will be executed for every instance of the class. (see CFR SPIN rules populating properties).</span> <span class='tr'>The CONSTRUCT shows the triple. The target (fro-usc) paragraph content text property will be populated with a “full text”.</span> <span class='tr'>The WHERE clause starts joining (any) child of the paragraph into a variable.</span> <span class='tr'>A challenge with the USLM paragraph structure is that content text is either</span> <span class='tr'>directly under uslm:content</span> <span class='tr'>nested within a uslm:P structure.</span> <span class='tr'>The OPTIONAL segments explore both possibilities and call a custom SPIN function to concatenate the text. We end up with either ?content_full_text or ?p_full_text bound.</span> <span class='tr'>The FILTER statements makes sure that ?full_text as a value. (some paragraphs don’t have a text.</span> <span class='tr'>Finally, we bind ?targetPara to the ?this variable. The spinmap:targetResource function uses the paragraph mapping context.</span> <span class='tr'># set Complex Type Text</span> <span class='tr'>CONSTRUCT {</span> <span class='tr'>?targetPara fro-usc:hasContentText ?full_text .</span> <span>}</span> <span class='tr'>WHERE {</span> <span class='tr'>?this composite:child ?complex_type .</span> <span class='tr'>OPTIONAL {</span> <span class='tr'>?complex_type a uslm:content .</span> <span class='tr'>BIND (usc-15-2D-spin:getUSLMComplexTypeText(?complex_type)</span> <span class='tr'>AS ?content_full_text) .</span> <span class='tr'>} .</span> <span class='tr'>?complex_type composite:child ?p .</span> <span class='tr'>?p a uslm:p .</span> <span class='tr'>BIND (usc-15-2D-spin:getUSLMComplexTypeText(?p)</span> <span class='tr'>AS ?p_full_text) .</span> <span class='tr'>BIND (IF(bound(?content_full_text), ?content_full_text,</span> <span class='tr'>?p_full_text) AS ?full_text) .</span> <span class='tr'>FILTER bound(?full_text) .</span> <span class='tr'>BIND (spinmap:targetResource(?this,</span> <span class='tr'>usc-15-2D-spin:paragraph-USC_Paragraph) AS ?targetPara) .</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 59 </span> Concatenating complex text structures<span class='tr'>The previous Paragraph transformation rule called a custom function to build the text.</span> <span class='tr'>The function usc-15-2D-spin:getUSLMComplexTypeText takes a uslm:content or uslm:p instance as an argument and returns the text.</span> <span class='tr'>USLM contains both content of the law and formatting. The XML reflect this having a text block broken down into small fragments of text nodes, references, dates, iterations and inline elements. Financial Regulation Ontology is only interested in the semantic. That is human readable smallest fragment of the law, that we connect to a Legal Reasoning rule. Hence, FinRegOnt concatenates the text fragments into a string data property. Other transformation rules retain the references, uslm:ref and resolve them into object property links. For example: If a reference (="/us/usc/t15/s80b–3”) points to a section, FinRegOnt populates the object property fro-leg-ref:refers_to with the URI.</span> <span class='tr'>The function’s query has three nested selects. The innermost query selects the text of the text of the different class instances under ?complex_type.</span> <span class='tr'>The next SELECT layer performs a GROUP CONCAT of the result set.</span> <span class='tr'>The outmost query FILTERs to ensure that ?full_text is bound and casts the value to xsd:string.</span> <span class='tr'>SELECT ?full_text_str</span> <span class='tr'>WHERE {</span> <span>{</span> <span class='tr'>SELECT ?complex_type ((GROUP_CONCAT(?complex_text)) AS ?full_text)</span> <span class='tr'>SELECT ?complex_type ?complex_text</span> <span class='tr'>?complex_type composite:child ?complex_child .</span> <span class='tr'>?complex_child composite:index ?child_index .</span> <span class='tr'>OPTIONAL {</span> <span class='tr'>?complex_child a sxml:TextNode .</span> <span class='tr'>?complex_child sxml:text ?complex_text .</span> <span class='tr'>} .</span> <span class='tr'>?complex_child a uslm:ref .</span> <span class='tr'>?complex_child composite:child ?ref_text_node .</span> <span class='tr'>?ref_text_node sxml:text ?complex_text .</span> <span class='tr'>?complex_child a uslm:date .</span> <span class='tr'>?complex_child composite:child ?date_text_node .</span> <span class='tr'>?date_text_node sxml:text ?complex_text .</span> <span class='tr'>?complex_child a uslm:i .</span> <span class='tr'>?complex_child composite:child ?i_text_node .</span> <span class='tr'>?i_text_node sxml:text ?complex_text .</span> <span class='tr'>?complex_child a uslm:inline .</span> <span class='tr'>FILTER bound(?complex_text) .</span> <span>}</span> <span class='tr'>ORDER BY (rdfs:Resource("child_index"^^xsd:string))</span> <span class='tr'>GROUP BY ?complex_type</span> <span class='tr'>ORDER BY (rdfs:Resource("complex_type"^^xsd:string))</span> <span class='tr'>FILTER (bound(?full_text) && (str(?full_text) != "")) .</span> <span class='tr'>BIND (spif:cast(?full_text, xsd:string, xsd:string, xsd:string) AS ?full_text_str) .</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 60 </span> Rules for paragraph object properties.<span class='tr'>The main object properties linking FRO USC instances are fro-leg-ref:divides and fro-leg-ref:refers_to.</span> <span class='tr'>The rule pattern is to query the composite:child structure and CONTRUCT the target.</span> <span class='tr'>The rule CONSTRUCT sets the divided by object property for the Section of the Paragraph.</span> <span class='tr'>The WHERE clause joins (any) Subject with a child of ?this. We test the populated variable for being a uslm:section. (Remember that paragraphs can also occur under Subsections.)</span> <span class='tr'>Finally, we BIND target section and paragraph using the mapping context.</span> <span class='tr'># set paragraph divides (Section)</span> <span class='tr'>CONSTRUCT {</span> <span class='tr'>?targetSection fro-leg-ref:divided_by ?targetPara .</span> <span>}</span> <span class='tr'>WHERE {</span> <span class='tr'>?section composite:child ?this .</span> <span class='tr'>?section a uslm:section .</span> <span class='tr'>BIND (spinmap:targetResource(?section, usc-15-2D-spin:chapeau-USC_Chapeau)</span> <span class='tr'>AS ?targetSection) .</span> <span class='tr'>BIND (spinmap:targetResource(?this, usc-15-2D-spin:paragraph-USC_Paragraph) AS ?targetPara) .</span> <span class='tr'>The second example follows the same pattern. We want check, if the paragraph has a chapeau and set it.</span> <span class='tr'>The CONSTRUCT sets the refers to Chapeau object property for the paragraph. (if it has a chapeau).</span> <span class='tr'>The WHERE clause joins composite:child of the paragraph, ?this. We test, if the child is a uslm:chapeau and BIND target chapeau and paragraph via the mapping context.</span> <span class='tr'># set reference to Chapeau</span> <span class='tr'>CONSTRUCT {</span> <span class='tr'>?targetPara fro-usc:refers_toChapeau ?targetChapeau .</span> <span>}</span> <span class='tr'>WHERE {</span> <span class='tr'>?this composite:child ?chapeau .</span> <span class='tr'>?chapeau a uslm:chapeau .</span> <span class='tr'>BIND (spinmap:targetResource(?chapeau, usc-15-2D-spin:chapeau-USC_Chapeau) AS ?targetChapeau) .</span> <span class='tr'>BIND (spinmap:targetResource(?this, usc-15-2D-spin:paragraph-USC_Paragraph) AS ?targetPara) .</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 61 </span> USC Inferencing and validation<span class='tr'>Running the inference engine to populates FRO USC following the same steps as explained for CFR inferencing.</span> <span class='tr'>The screenshot shows the class browser with number of instances and the list of inference triples, scrolled for our paragraph.</span> <span class='tr'>There are 1985 USC_Component instances.</span> <span class='tr'>Initial validation follows the same steps as for FRO CFR:</span> <span class='tr'>Compare instance counts to the USCUSLM data source ontology.</span> <span class='tr'>Examine sample class instances in the Resource Form.</span> <span class='tr'>Draw and explore the graph for the Private Fund Exception.</span> <span class='tr'>Follow the hierarchy up to section and chapter.</span> <span class='tr'>Expand chapeau and notes associated with the level elements.</span> <span class='tr'>As for CFR we make the triples persistent in the target ontology file. The file is available on the FinRegOnt website:</span> <span class='tr'>FRO_USC_Title_15_Chapter_2D.ttl</span> <span class='tr'>We won’t repeat these steps here, but rather drill deeper into data and metadata queries on the United States Code.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 62 </span> United States Code: “everything query”<span class='tr'>The query SELECTs all USC instances and properties. This is to validate target population comprehensively.</span> <span class='tr'>The SPARQL statement is quite long (115 lines) and execution may take a few minutes. The screenshot is a zoom-out of the Excel result set (70 columns and 160,000 rows). We use the zoom-out to eyeball consistency. Any blank row should be investigated:</span> <span class='tr'>There is a break in the population or the query</span> <span class='tr'>There is a valid reason that the particular USC chapter doesn’t have the particular field(s).</span> <span class='tr'>The website query directory contains various queries and result sets for CFR and USC chapters in Excel format.</span> <span class='tr'>The following pages show sections of the “everything query” as standalone SELECTS and results sets.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 63 </span> USC query: Title to Subchapter<span class='tr'>The query SELECTs all USC instances and properties. We show the SPARQL and samples of the result set.</span> <span class='tr'>The WHERE clause for title and chapter is straightforward. The OPTIONAL ensures that ?subchapter is bound, dividing either chapter or subchapter.</span> <span class='tr'># USC query header information Title to Subchapter</span> <span class='tr'>SELECT DISTINCT ?title_seq ?title_ident ?title_heading ?title_number</span> <span class='tr'>?chapter ?chapter_seq ?chapter_ident ?chapter_heading</span> <span class='tr'>?chapter_number</span> <span class='tr'>?subchapter ?subchapter_seq ?subchapter_ident</span> <span class='tr'>?subchapter_heading ?subchapter_number</span> <span class='tr'>WHERE {</span> <span class='tr'># Title properties</span> <span class='tr'>?title a fro-usc:USC_Title ;</span> <span class='tr'>fro-leg-ref:hasSequenceNumber ?title_seq ;</span> <span class='tr'>fro-usc:hasIdentifierText ?title_ident ;</span> <span class='tr'>fro-usc:hasHeading ?title_heading ;</span> <span class='tr'>fro-usc:hasNumberText ?title_number .</span> <span class='tr'># Chapter properties</span> <span class='tr'>?title fro-leg-ref:divided_by ?chapter .</span> <span class='tr'>?chapter fro-leg-ref:hasSequenceNumber ?chapter_seq ;</span> <span class='tr'>fro-usc:hasIdentifierText ?chapter_ident ;</span> <span class='tr'>fro-usc:hasHeading ?chapter_heading ;</span> <span class='tr'>fro-usc:hasNumberText ?chapter_number .</span> <span class='tr'># Some Titles do not have a subchapter. The Sections are directly underneath the Chapter</span> <span class='tr'># Subchapter properties</span> <span class='tr'>OPTIONAL {</span> <span class='tr'>?chapter fro-leg-ref:divided_by ?subchapter .</span> <span class='tr'>?subchapter a fro-usc:USC_Subchapter ;</span> <span class='tr'>fro-leg-ref:hasSequenceNumber ?subchapter_seq ;</span> <span class='tr'>fro-usc:hasIdentifierText ?subchapter_ident ;</span> <span class='tr'>fro-usc:hasHeading ?subchapter_heading ;</span> <span class='tr'>fro-usc:hasNumberText ?subchapter_number ;</span> <span class='tr'>fro-leg-ref:divided_by ?section .</span> <span>}</span> <span class='tr'>title_seq</span> <span class='tr'>title_ident</span> <span class='tr'>/us/usc/t15</span> <span class='tr'>title_heading</span> <span class='tr'>COMMERCE AND TRADE</span> <span class='tr'>title_number</span> <span class='tr'>Title 15—</span> <span class='tr'>chapter</span> <span class='tr'><http://finregont.com/fro/usc/FRO_USC_Title_15_Chapter_2D.ttl#idd039fe6a-0c74-11e6-aa53-e455a13f2ad9></span> <span class='tr'>chapter_seq</span> <span>4</span> <span class='tr'>chapter_ident</span> <span class='tr'>/us/usc/t15/ch2D</span> <span class='tr'>chapter_heading</span> <span class='tr'>INVESTMENT COMPANIES AND ADVISERS</span> <span class='tr'>chapter_number</span> <span class='tr'>CHAPTER 2D—</span> <span class='tr'>subchapter</span> <span class='tr'><http://finregont.com/fro/usc/FRO_USC_Title_15_Chapter_2D.ttl#idd04f5b18-0c74-11e6-aa53-e455a13f2ad9></span> <span class='tr'>subchapter_seq</span> <span>3</span> <span class='tr'>subchapter_ident</span> <span class='tr'>/us/usc/t15/ch2D/schII</span> <span class='tr'>subchapter_heading</span> <span class='tr'>INVESTMENT ADVISERS</span> <span class='tr'>subchapter_number</span> <span class='tr'>SUBCHAPTER II—</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 64 </span> USC query: Investment Advisers, Sections<span class='tr'>The query SELECTs all Sections under Subchapter II – INVESTMENT ADVISERS</span> <span class='tr'>section_ident</span> <span class='tr'>section_heading</span> <span class='tr'>section_number</span> <span class='tr'>/us/usc/t15/s80b–1</span> <span class='tr'>Findings</span> <span class='tr'>§ 80b–1.</span> <span class='tr'>/us/usc/t15/s80b–10</span> <span class='tr'>Disclosure of information by Commission</span> <span class='tr'>§ 80b–10.</span> <span class='tr'>/us/usc/t15/s80b–10a</span> <span class='tr'>Consultation</span> <span class='tr'>§ 80b–10a.</span> <span class='tr'>/us/usc/t15/s80b–11</span> <span class='tr'>Rules, regulations, and orders of Commission</span> <span class='tr'>§ 80b–11.</span> <span class='tr'>/us/usc/t15/s80b–12</span> <span class='tr'>Hearings</span> <span class='tr'>§ 80b–12.</span> <span class='tr'>/us/usc/t15/s80b–13</span> <span class='tr'>Court review of orders</span> <span class='tr'>§ 80b–13.</span> <span class='tr'>/us/usc/t15/s80b–14</span> <span class='tr'>Jurisdiction of offenses and suits</span> <span class='tr'>§ 80b–14.</span> <span class='tr'>/us/usc/t15/s80b–15</span> <span class='tr'>Validity of contracts</span> <span class='tr'>§ 80b–15.</span> <span class='tr'>/us/usc/t15/s80b–16</span> <span class='tr'>Omitted</span> <span class='tr'>§ 80b–16.</span> <span class='tr'>/us/usc/t15/s80b–17</span> <span class='tr'>Penalties</span> <span class='tr'>§ 80b–17.</span> <span class='tr'>/us/usc/t15/s80b–18</span> <span class='tr'>Hiring and leasing authority of Commission</span> <span class='tr'>§ 80b–18.</span> <span class='tr'>/us/usc/t15/s80b–18a</span> <span class='tr'>State regulation of investment advisers</span> <span class='tr'>§ 80b–18a.</span> <span class='tr'>/us/usc/t15/s80b–18b</span> <span class='tr'>Custody of client accounts</span> <span class='tr'>§ 80b–18b.</span> <span class='tr'>/us/usc/t15/s80b–18c</span> <span class='tr'>Rule of construction relating to the Commodities Exchange Act</span> <span class='tr'>§ 80b–18c.</span> <span class='tr'>/us/usc/t15/s80b–19</span> <span class='tr'>Separability</span> <span class='tr'>§ 80b–19.</span> <span class='tr'>/us/usc/t15/s80b–2</span> <span class='tr'>Definitions</span> <span class='tr'>§ 80b–2.</span> <span class='tr'>/us/usc/t15/s80b–20</span> <span class='tr'>Short title</span> <span class='tr'>§ 80b–20.</span> <span class='tr'>/us/usc/t15/s80b–21</span> <span class='tr'>Effective date</span> <span class='tr'>§ 80b–21.</span> <span class='tr'>/us/usc/t15/s80b–3</span> <span class='tr'>Registration of investment advisers</span> <span class='tr'>§ 80b–3.</span> <span class='tr'>/us/usc/t15/s80b–3a</span> <span class='tr'>State and Federal responsibilities</span> <span class='tr'>§ 80b–3a.</span> <span class='tr'>/us/usc/t15/s80b–4</span> <span class='tr'>Reports by investment advisers</span> <span class='tr'>§ 80b–4.</span> <span class='tr'>/us/usc/t15/s80b–4a</span> <span class='tr'>Prevention of misuse of nonpublic information</span> <span class='tr'>§ 80b–4a.</span> <span class='tr'>/us/usc/t15/s80b–5</span> <span class='tr'>Investment advisory contracts</span> <span class='tr'>§ 80b–5.</span> <span class='tr'>/us/usc/t15/s80b–6</span> <span class='tr'>Prohibited transactions by investment advisers</span> <span class='tr'>§ 80b–6.</span> <span class='tr'>/us/usc/t15/s80b–6a</span> <span class='tr'>Exemptions</span> <span class='tr'>§ 80b–6a.</span> <span class='tr'>/us/usc/t15/s80b–7</span> <span class='tr'>Material misstatements</span> <span class='tr'>§ 80b–7.</span> <span class='tr'>/us/usc/t15/s80b–8</span> <span class='tr'>General prohibitions</span> <span class='tr'>§ 80b–8.</span> <span class='tr'>/us/usc/t15/s80b–9</span> <span class='tr'>Enforcement of subchapter</span> <span class='tr'>§ 80b–9.</span> <span class='tr'>We select instances of type FRO USC Subchapter where the heading matches our search criteria. And join Sections that divide the Subchapter.</span> <span class='tr'>The result set lists identifier, heading and section number, including the Registration of investment Advisers that we examined before.</span> <span class='tr'>We will continue to navigate down to the Private Fund Exemption in the next query</span> <span class='tr'># USC query INVESTMENT ADVISERS, Sections</span> <span class='tr'>SELECT *</span> <span class='tr'>WHERE {</span> <span class='tr'>?subchapter a fro-usc:USC_Subchapter .</span> <span class='tr'>?subchapter fro-usc:hasHeading "INVESTMENT ADVISERS" .</span> <span class='tr'>?subchapter fro-usc:hasHeading ?subchapter_heading .</span> <span class='tr'>?subchapter fro-leg-ref:divided_by ?section .</span> <span class='tr'># Section properties</span> <span class='tr'>?section a fro-usc:USC_Section ;</span> <span class='tr'>fro-leg-ref:hasSequenceNumber ?section_seq ;</span> <span class='tr'>fro-usc:hasIdentifierText ?section_ident ;</span> <span class='tr'>fro-usc:hasHeading ?section_heading ;</span> <span class='tr'>fro-usc:hasNumberText ?section_number .</span> <span>}</span> <span class='tr'>ORDER BY ?section_ident</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 65 </span> USC query: Registration Subsection<span class='tr'>The query SELECTs all Subsections under Section § 80b–3 -Registration of investment advisers.</span> <span class='tr'>Filter criteria is the section number, "§ 80b–3. The paragraph text (OPTIONAL) is blank for sections that have text only in the underlying paragraphs.</span> <span class='tr'>The sections have a subsection as we will see in the next query.</span> <span class='tr'>ident</span> <span class='tr'>subsection_heading</span> <span>#</span> <span class='tr'>Subsection_text</span> <span class='tr'>/us/usc/t15/s80b–3/a</span> <span class='tr'>Necessity of registration</span> <span class='tr'>(a)</span> <span class='tr'>Except as provided in subsection (b) and section 80b–3a of this title , it shall be unlawful …</span> <span class='tr'>/us/usc/t15/s80b–3/b</span> <span class='tr'>Investment advisers who need not be registered</span> <span class='tr'>(b)</span> <span class='tr'>/us/usc/t15/s80b–3/c</span> <span class='tr'>Procedure for registration; filing of application; effective date of registration; amendment of registration</span> <span class='tr'>(c)</span> <span class='tr'>/us/usc/t15/s80b–3/d</span> <span class='tr'>Other acts prohibited by subchapter</span> <span class='tr'>(d)</span> <span class='tr'>Any provision of this subchapter (other than subsection (a) of this section) which prohibits …</span> <span class='tr'>/us/usc/t15/s80b–3/e</span> <span class='tr'>Censure, denial, or suspension of registration; notice and hearing</span> <span class='tr'>(e)</span> <span class='tr'>/us/usc/t15/s80b–3/f</span> <span class='tr'>Bar or suspension from association with investment adviser; notice and hearing</span> <span class='tr'>(f)</span> <span class='tr'>The Commission, by order, shall censure or place limitations on the activities of any person …</span> <span class='tr'>/us/usc/t15/s80b–3/g</span> <span class='tr'>Registration of successor to business of investment adviser</span> <span class='tr'>(g)</span> <span class='tr'>Any successor to the business of an investment adviser registered under this section shall be …</span> <span class='tr'>/us/usc/t15/s80b–3/h</span> <span class='tr'>Withdrawal of registration</span> <span class='tr'>(h)</span> <span class='tr'>Any person registered under this section may, upon such terms and conditions as the Commission finds …</span> <span class='tr'>/us/usc/t15/s80b–3/i</span> <span class='tr'>Money penalties in administrative proceedings</span> <span class='tr'>(i)</span> <span class='tr'>/us/usc/t15/s80b–3/j</span> <span class='tr'>Authority to enter order requiring accounting and disgorgement</span> <span class='tr'>(j)</span> <span class='tr'>In any proceeding in which the Commission may impose a penalty under this section, …</span> <span class='tr'>/us/usc/t15/s80b–3/k</span> <span class='tr'>Cease-and-desist proceedings</span> <span class='tr'>(k)</span> <span class='tr'>/us/usc/t15/s80b–3/l</span> <span class='tr'>Exemption of venture capital fund advisers</span> <span class='tr'>(l)</span> <span class='tr'>/us/usc/t15/s80b–3/m</span> <span class='tr'>Exemption of and reporting by certain private fund advisers</span> <span class='tr'>(m)</span> <span class='tr'>/us/usc/t15/s80b–3/n</span> <span class='tr'>Registration and examination of mid-sized private fund advisers</span> <span class='tr'>(n)</span> <span class='tr'>In prescribing regulations to carry out the requirements of this section with respect to investment advisers acting as …</span> <span class='tr'># USC Query - section 80-b3 Registration subsections</span> <span class='tr'>SELECT *</span> <span class='tr'>WHERE {</span> <span class='tr'>?section a fro-usc:USC_Section .</span> <span class='tr'>?section fro-usc:hasNumberText ?section_number .</span> <span class='tr'>?section fro-usc:hasNumberText "§ 80b–3." .</span> <span class='tr'># Subsection properties - (not every section has a subsection)</span> <span class='tr'>OPTIONAL {</span> <span class='tr'>?section fro-leg-ref:divided_by ?subsection .</span> <span class='tr'>?subsection a fro-usc:USC_Subsection .</span> <span class='tr'>?subsection fro-leg-ref:hasSequenceNumber</span> <span class='tr'>?subsection_seq ;</span> <span class='tr'>fro-usc:hasIdentifierText ?subsection_ident ;</span> <span class='tr'>fro-usc:hasHeading ?subsection_heading ;</span> <span class='tr'>fro-usc:hasNumberText ?subsection_number .</span> <span class='tr'>OPTIONAL { ?subsection fro-usc:hasContentText</span> <span class='tr'>?subsection_text . }</span> <span>}</span> <span class='tr'>ORDER BY ?subsection_number</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 66 </span> USC query: Registration Subsection<span class='tr'>The query SELECTs all Paragraphs under Subsection § 80b–3/b - Registration Exemption</span> <span class='tr'>SELECT *</span> <span class='tr'>WHERE {</span> <span class='tr'>?subsection a fro-usc:USC_Subsection .</span> <span class='tr'>?subsection fro-usc:hasIdentifierText "/us/usc/t15/s80b–3/b" .</span> <span class='tr'>?subsection fro-leg-ref:divided_by ?subsection_para .</span> <span class='tr'>?subsection_para a fro-usc:USC_Paragraph .</span> <span class='tr'>?subsection_para fro-leg-ref:hasSequenceNumber ?subsection_para_seq .</span> <span class='tr'>?subsection_para fro-usc:hasIdentifierText ?subsection_para_ident .</span> <span class='tr'>OPTIONAL {?subsection_para fro-usc:hasHeading ?subsection_para_heading . }</span> <span class='tr'>?subsection_para fro-usc:hasNumberText ?subsection_para_number .</span> <span class='tr'>OPTIONAL {?subsection_para fro-usc:hasContentText ?subsection_para_text .}</span> <span>}</span> <span class='tr'>ORDER BY ?subsection_para_number</span> <span class='tr'>Finally, we drilled down from Title 15 all the way to the Investment Adviser Registration exemption. The piece of USC OLCR XML that we started with.</span> <span class='tr'>Note that paragraphs 5,7 and don’t have a text, because they have content in Subparagraphs.</span> <span class='tr'>subsection_para_ident</span> <span class='tr'>subsection_para_number</span> <span class='tr'>subsection_para_text</span> <span class='tr'>/us/usc/t15/s80b–3/b/1</span> <span class='tr'>(1)</span> <span class='tr'>any investment adviser, other than an investment adviser who acts as an investment adviser to any private fund, all of whose clients are residents of the State within which such investment adviser maintains his or its principal office and place of business, and who does not furnish advice or issue analyses or reports with respect to securities listed or admitted to unlisted trading privileges on any national securities exchange;</span> <span class='tr'>/us/usc/t15/s80b–3/b/2</span> <span class='tr'>(2)</span> <span class='tr'>any investment adviser whose only clients are insurance companies;</span> <span class='tr'>/us/usc/t15/s80b–3/b/3</span> <span class='tr'>(4)</span> <span class='tr'>any investment adviser that is a foreign private adviser;</span> <span class='tr'>/us/usc/t15/s80b–3/b/4</span> <span class='tr'>(5)</span> <span class='tr'>/us/usc/t15/s80b–3/b/5</span> <span class='tr'>(6)</span> <span class='tr'>any plan described in section 414(e) of title 26 , any person or entity eligible to establish and maintain such a plan under title 26, or any trustee, director, officer, or employee of or volunteer for any such plan or person, if such person or entity, acting in such capacity, provides investment advice exclusively to, or with respect to, any plan, person, or entity or any company, account, or fund that is excluded from the definition of an investment company under section 80a–3(c)(14) of this title ;</span> <span class='tr'>/us/usc/t15/s80b–3/b/6</span> <span class='tr'>(7)</span> <span class='tr'>/us/usc/t15/s80b–3/b/7</span> <span class='tr'>(8)</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 67 </span> Summary and conclusion<span class='tr'>Code of Federal Regulations and the United States Code are LKIF Legal Documents: Statute and Regulation.</span> <span class='tr'>The legislative context for laws & regulations consists of actors (LKIF Public Bodies and Public Acts), and Public Acts ( lawmaking, rulemaking, codification and publication). LKIF expression ties the Public Act to the Legal Document.</span> <span class='tr'>Government publishers provide the laws and regulations in XML format.</span> <span class='tr'>Extract and convert the source file into FRO RDF Staging.</span> <span class='tr'>Transform the RDF representation into FRO ontology with semantic mapping and Inference Rules.</span> <span class='tr'>Load the inference triples into the target FRO ontology.</span> <span class='tr'>The result is a standard Legal Ontology (LKIF) with FRO extensions populated with the full text of Finance Laws and Regulations.</span> <span class='tr'>The Semantic Web approach has everything within the ontology and available for SPARQL query: Requirements, Schema, Data, Linage to source, and Mapping.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 68 </span> Chapter II – books, recommended companion reading<span class='tr'>Data Integration Blueprint and Modeling</span> <span class='tr'>Anthony David Giordano</span> <span class='tr'>IBM Press, 2011</span> <span class='tr'>Law and the Semantic Web: Legal Ontologies, Methodologies, Legal Information Retrieval, and Applications</span> <span class='tr'>Richard Benjamins, Pompeu Casanovas, Joost Breuker, Aldo Gangemi</span> <span class='tr'>Springer, 2009</span> <span class='tr'>Model Driven Engineering and Ontology Development Dragan Gasevic, Dragan Djuric, Vladan Devedzic</span> <span class='tr'>Springer, 2010</span> <span class='tr'>Legal Ontology Engineering</span> <span class='tr'>Nuria Casellas</span> <span class='tr'>Springer, 2011</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 69 </span> Chapter II - references<span class='tr'>Financial Regulation Ontology</span> <span class='tr'>Tutorial (online PowerPoint and softcopies):</span> <span class='tr'>Documentation:</span> <span class='tr'>SPARQL queries and result sets in Excel:</span> <span class='tr'>Source Files (OWL-turtle): Subdirectories CFR, USC and REF</span> <span class='tr'>TopBraid Composer Maestro website:</span> <span class='tr'>TopQuadrant, SPIN SPARQL Inferencing Notation:</span> <span class='tr'>TopQuadrant, SPINMap ontology mapping: graphical-notation/</span> <span class='tr'>W3C, Recommendation: SPARQL Query Language for RDF:</span> <span class='tr'>SPIN – SPARQL Inferencing Notation website:</span> <span class='tr'>SPARQL Motion website:</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p><p><span class="span-circle-num"> 70 </span> FRO Chapter III – Legal Reasoning<span class='tr'>Chapter 3 will be added to FinRegOnt.com as a separate deck in November.</span> <span class='tr'>© Jayzed Data Models Inc. 2016</span></p> </div> </div> </div> </div> </div> </div> </div> <script src='https://www.google.com/recaptcha/api.js'></script> <!-- Box Modal --> <div class="modal fade" id="login" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="Close" on="tap:login.close"><span aria-hidden="true">×</span></button> <h3 class="modal-title">Sign In</h3> </div> <div class="modal-body"> <form action="https://slidepptx.com/login" method="post"> <div class="form-group form-group-lg"> <label class="sr-only" for="email">Email</label> <input class="form-input form-control" type="text" name="email" id="email" value="" placeholder="Email" /> </div> <div class="form-group form-group-lg"> <label class="sr-only" for="password">Password</label> <input class="form-input form-control" type="password" name="password" id="password" value="" placeholder="Password" /> </div> <div class="form-group form-group-lg"> <div class="checkbox"> <label class="form-checkbox"> <input type="checkbox" name="remember" value="1" /> <i class="form-icon"></i> Remember Password </label> <label class="pull-right"><a href="https://slidepptx.com/forgot">Forgot Password?</a></label> </div> </div> <button class="btn btn-lg btn-primary btn-block" type="submit">Sign In</button> </form> <hr style="margin-top: 15px;" /> <a href="https://slidepptx.com/login/google" class="btn btn-lg btn-google btn-block"><i class="fa fa-google"></i> Login with Google</a> </div> </div> </div> </div> <!-- Box Footer --> <div class="footer-container" style="background: #fff;display: block;padding: 10px 0 20px 0;margin-top: 30px;"> <div class="footer-container-inner"> <footer id="footer" class="container"> <div class="row"> <div class="bottom-footer"> <div class="container"> Copyright © 2025 SLIDEPPTX.COM. All rights reserved. </div> <hr /> </div> </div> <div class="row"> <!-- Block footer --> <section class="block col-md-4 col-xs-12 col-sm-3" id="block_various_links_footer"> <h4>Information</h4> <ul class="toggle-footer" style=""> <li><a href="https://slidepptx.com/about">About Us</a></li> <li><a href="https://slidepptx.com/privacy">Privacy Policy</a></li> <li><a href="https://slidepptx.com/term">Terms and Conditions</a></li> <li><a href="https://slidepptx.com/copyright">Copyright</a></li> <li><a href="https://slidepptx.com/contact">Contact Us</a></li> </ul> </section> <!-- /Block footer --> <section id="social_block" class="col-md-4 col-xs-12 col-sm-3 block"> <h4>Follow us</h4> <ul> <li class="facebook"> <a target="_blank" href="" title="Facebook"> <i class="fa fa-facebook-square"></i> <span>Facebook</span> </a> </li> <li class="twitter"> <a target="_blank" href="" title="Twitter"> <i class="fa fa-twitter-square"></i> <span>Twitter</span> </a> </li> <li class="google-plus"> <a target="_blank" href="" title="Google Plus"> <i class="fa fa-plus-square"></i> <span>Google Plus</span> </a> </li> </ul> </section> <!-- Block Newsletter module--> <div id="newsletter" class="col-md-4 col-xs-12 col-sm-3 block"> <h4>Newsletter</h4> <div class="block_content"> <form action="https://slidepptx.com/newsletter" method="post"> <div class="form-group"> <input id="newsletter-input" type="text" name="email" size="18" placeholder="Entrer Email" /> <button type="submit" name="submit_newsletter" class="btn btn-default"> <i class="fa fa-location-arrow"></i> </button> <input type="hidden" name="action" value="0"> </div> </form> </div> </div> <!-- /Block Newsletter module--> </div> </footer> </div> </div> <!-- #footer --> <script> $(function () { $("#document_search").autocomplete({ source: function (request, response) { $.ajax({ url: "https://slidepptx.com/suggest", dataType: "json", data: { term: request.term }, success: function (data) { response(data); } }); }, autoFill: true, select: function (event, ui) { $(this).val(ui.item.value); $(this).parents("form").submit(); } }); }); $(document).ready(function() { $(".doc-share-btn").click(function() { var urlshare = $(this).attr('data-share-url'); window.open('http://www.facebook.com/sharer.php?u=' + urlshare, '_blank'); }); }); function download_submit() { $('#download_form').submit(); } </script> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-106734935-2', 'auto'); ga('send', 'pageview'); </script> </body> </html>